精华内容
下载资源
问答
  • 一个站点的资源管理总是很麻烦,我希望在站点里有一个像Windows的资源管理器一样好用的资源管理器对站点资源进行统一的管理。web内的资源管理和电脑上的资源管理有很多共同点和不同点。相同点有这个资源属于哪一个...

    一个站点的资源管理总是很麻烦,我希望在站点里有一个像Windows的资源管理器一样好用的资源管理器对站点资源进行统一的管理。web内的资源管理和电脑上的资源管理有很多共同点和不同点。相同点有这个资源属于哪一个用户或组,资源的添加、修改、删除、查找等。有一个最大的不同点是电脑上的一个资源同事只有一个程序占用着它,而web上的资源就不一样一个资源可以同时被很多过页面占用。就比如说有一张图片A,两个页面1和2,当两页面中有一个在用着这个一张照片A的时候,这一张照片是不允许删除的,但是又怎么知道照片A这时被多少个一面用着呢。基于这些问题我正在试图去验证在一个站点中做一个统一的资源管理器来管理站点资源的可行性。JAlbum就是这个验证的一个实践。并且在一个小型项目上进行了应用。

    JAlbum使用的PHP框架是[thinkPHP](http://www.thinkphp.cn/),用到了[Web Uploader](http://fex.baidu.com/webuploader/)上传图片,和[layer](http://layer.layui.com/)弹出层来提高交互效果。

    展开全文
  • web 资源管理器相关产品

    千次阅读 2012-03-07 21:39:53
    今天突发奇想,用web来操作资源管理器是一件多么美妙的事情,于是就在网上找了一下,发现还真有。 下面就来介绍一下,采用的技术全部是ajax+php,好像没有java的份,不知道是不是java不太擅长,管理的系统没有发现...

    今天突发奇想,用web来操作资源管理器是一件多么美妙的事情,于是就在网上找了一下,发现还真有。

    下面就来介绍一下,采用的技术全部是ajax+php,好像没有java的份,不知道是不是java不太擅长,管理的系统没有发现是windows的,如果有人发现告诉我一声啊。

    webfmt:

    网站:http://webfmt.com/

    先看一下截图把


    感觉是不是很不错,看了一下照片,感觉是一个中国人写的。

    被管理设备是linux。

    elfinder

    网站:http://elrte.org/elfinder

    还是看图:

    • elFinder         List view and context menu

    • Build-in text editor         Drag & Drop

    被管理设备是mac os,前台用jQuery UI后台用PHP and Python

    ajaxplorer

    网站:http://ajaxplorer.info/

    看图:



    看图感觉功能很强大,而且还支持很多插件:

    NameIdentifierPHP ExtensionExternal (PEAR or command line)
    Email Viewereditor.eml Mail_mimeDecode
    MySQL Driveraccess.mysqlmysql 
    SFTP Driveraccess.sftpssh2 
    Samba Driveraccess.smb smbclient via command line
    Office Docseditor.zohoopenssl 
    PDF Viewereditor.imagick Imagick via command line
    Exif extractormeta.exifexif 
    Subversionmeta.svn svn via command line
    Dropboxaccess.dropbox HTTP_OAuth
    Mailboxaccess.mailboximap 
    WebDAV Clientaccess.webdav HTTP_WebDAVClient

    展开全文
  • 《打造一个网站或者其他网络应用的文件管理接口(WebApi)第一章--之-- “文件下载” 》 访问一个网上的图片资源,我想你应该遇到过这样的情况: 常规情况下:http://.../Statics/Image/HeadPortrait.png 当然还有...
    《打造一个网站或者其他网络应用的文件管理接口(WebApi)第一章--之-- “文件下载” 》

    ========================================================
    作者:
    qiujuer
    博客:blog.csdn.net/qiujuer
    网站:www.qiujuer.net
    开源库:Genius-Android
    转载请注明出处:blog.csdn.net/qiujuer/article/details/41621781
    ========================================================

    In This

    访问一个网上的图片资源,我想你应该遇到过这样的情况:

    常规情况下:http://www.qiujuer.net/Statics/Image/Home/HeadPortrait.png

    当然还有这样:http://www.qiujuer.net/Resource/75CDF243C30750D397A90E58D412B22E



    可以看到得到同样的一张图片却能采用不一样的地址,特别是在第二个地址中却没有文件的后缀。

    这个奇葩了吧?有感觉到很奇怪的么?

    其实很简单

    第一种情况中是访问的当前图片存储在网站服务器中的地址。

    换言之其在”cdn.duitang.com“网站的服务器中存储的地址应该是文件夹"uploads/item/201403/04”下的“20140304122431_XMCuj.jpeg”文件。

    而输入第一张图片中的地址的时候,web服务器将会在其指定文件夹下去搜寻该文件,然后返回图片。

    第二种情况中你能说是在”www.qiujuer.net“网站的“Resource”文件夹下的”75CDF243C30750D397A90E58D412B22E“文件么?

    有这样的可能,但是在这个情况下不是!

    其工作原理是访问当前URL的时候触发的是“Resource”接口,然后传入了ID=”75CDF243C30750D397A90E58D412B22E“

    然后WebApi服务器根据该ID通过一定的方式去寻找图片资源,然后通过资源的方式返回图片;

    而其图片究竟是存在哪里你并不知道,有可能是在当前网站目录下的某个文件夹,也可能是其他盘;总之是不固定的。


    请问针对第二种情况你能使用爬虫软件去爬该图片么?如果可以;但是我给这个接口加上指定的用户权限呢?

    说了这么多,我们来实现一下!

    CodeTime

    首先打开VS-新建项目-web应用程序-名称“WebResource”-WebApi


    进入项目-删除ValuesController

    添加一个webapi控制器-ResourceApiController


    在其中实现Get方法:

        [RoutePrefix("Resource")]
        public class ResourceApiController : ApiController
        {
            private static readonly long MEMORY_SIZE = 64 * 1024 * 1024;
            private static readonly string ROOT_PATH = HttpContext.Current.Server.MapPath("~/App_Data/");
    
    
            [HttpGet]
            [Route("{Id}")]
            public async Task<HttpResponseMessage> Get(string Id)
            {
                // 进入时判断当前请求中是否含有 ETag 标识,如果有就返回使用浏览器缓存
                // Return 304
                var tag = Request.Headers.IfNoneMatch.FirstOrDefault();
                if (Request.Headers.IfModifiedSince.HasValue && tag != null && tag.Tag.Length > 0)
                    return new HttpResponseMessage(HttpStatusCode.NotModified);
    
    
                // 进行模拟 App_Data/Image/{id}.png
                // 打开找到文件
                FileInfo info = new FileInfo(Path.Combine(ROOT_PATH, "Image", Id + ".png"));
                if (!info.Exists)
                    return new HttpResponseMessage(HttpStatusCode.BadRequest);
    
    
                FileStream file = null;
                try
                {
                    // 打开文件
                    file = new FileStream(info.FullName, FileMode.Open, FileAccess.Read, FileShare.Read);
                    HttpResponseMessage result = new HttpResponseMessage(HttpStatusCode.OK);
                    // 在浏览器中显示 inline
                    ContentDispositionHeaderValue disposition = new ContentDispositionHeaderValue("inline");
                    // 写入文件基本信息
                    disposition.FileName = file.Name;
                    disposition.Name = file.Name;
                    disposition.Size = file.Length;
    
    
                    // 判断是否大于64Md,如果大于就采用分段流返回,否则直接返回
                    if (file.Length < MEMORY_SIZE)
                    {
                        //Copy To Memory And Close.
                        byte[] bytes = new byte[file.Length];
                        await file.ReadAsync(bytes, 0, (int)file.Length);
                        file.Close();
                        MemoryStream ms = new MemoryStream(bytes);
    
    
                        result.Content = new ByteArrayContent(ms.ToArray());
                    }
                    else
                    {
                        result.Content = new StreamContent(file);
                    }
    
    
                    // 写入文件类型,这里是图片png
                    result.Content.Headers.ContentType = new MediaTypeHeaderValue("image/png");
                    result.Content.Headers.ContentDisposition = disposition;
                    // 设置缓存信息,该部分可以没有,该部分主要是用于与开始部分结合以便浏览器使用304缓存
                    // Set Cache
                    result.Content.Headers.Expires = new DateTimeOffset(DateTime.Now).AddHours(1);
                    // 这里应该写入文件的存储日期
                    result.Content.Headers.LastModified = new DateTimeOffset(DateTime.Now);
                    result.Headers.CacheControl = new CacheControlHeaderValue() { Public = true, MaxAge = TimeSpan.FromHours(1) };
                    // 设置Etag,这里就简单采用 Id
                    result.Headers.ETag = new EntityTagHeaderValue(string.Format("\"{0}\"", Id));
    
    
                    // 返回请求
                    return result;
                }
                catch
                {
                    if (file != null)
                    {
                        file.Close();
                    }
                }
    
    
                return new HttpResponseMessage(HttpStatusCode.BadRequest);
            }
        }
    基本上都进行了注释,如果有不了解的还请评论中写下。

    RunTime

    准备工作

    在运行前我们需要在“App_Data”下建立文件夹“Image”。然后拷贝两张图片“001.png”\"002.png"进去。

    运行

    点击运行-浏览器中输入URL:http://localhost:60586/Resource/001

    把ID换成002再次输入:http://localhost:60586/Resource/002


    OK,基本的功能我们实现了。

    END Time

    为什么是“App_Data”文件夹?

    在这里有必要说的是“App_Data”在.NET Web 中是受保护的对象。无法直接通过URL访问;不信?

    来试试,输入URL:http://localhost:60586/App_Data/Image/002.png


    所以说,一般数据库文件是可以放在该文件夹下的;当然现在你可以把图片放在下面,然后通过接口访问。

    是否太简单了?

    的确,在这里第一章只是一个开始;后面会逐渐的进行扩大化。

    比如增加:上传、其他非图片文件、以及不是001,002等名称,而是运算一个Id出来、当然还有加上数据的管理等等。

    代码

    这次的代码打包了;但是CSDN死活传不上去,我去啊!不过好在也简单;就一个方法;下一章中一起打包吧。

    下一章

    下一章已经更新,资源文件也在下一章中;

    [WebApi] 捣鼓一个资源管理器--多文件上传

    ========================================================
    作者:
    qiujuer
    博客:blog.csdn.net/qiujuer
    网站:www.qiujuer.net
    开源库:Genius-Android
    转载请注明出处:blog.csdn.net/qiujuer/article/details/41621781
    ========================================================

    展开全文
  • Java Web项目 慧心人力资源管理系统

    万次阅读 多人点赞 2021-04-02 10:53:49
    题目:慧心人力资源管理系统 文档下载:https://download.csdn.net/download/weixin_44893902/16336711 实现代码下载: 目录 一、语言和环境 二、实现功能 三、数据库设计 四、具体要求及推荐实现步骤 五、...

    题目:慧心人力资源管理系统

    文档下载:https://download.csdn.net/download/weixin_44893902/16336711

    完整项目下载:https://download.csdn.net/download/weixin_44893902/16393518

    目录

    一、语言和环境

    二、实现功能

    三、数据库设计

    四、具体要求及推荐实现步骤

    五、评分标准

    六、实现代码


    一、语言和环境

    1. 实现语言:JAVA语言。
    2. 环境要求:MyEclipse/Eclipse + Tomcat + MySql。
    3. 使用技术:Jsp+Servlet+JavaBean
    4. 数据库技术:JDBC

    二、实现功能

    人力资源公司为了提高管理效率,需开发一套B/S结构人力资源管理系统,对员工信息进行管理,主要功能如下:

    1、首页默认显示现有的所有员工信息

    图1 首页显示所有员工信息

     

    2、鼠标悬停某行数据,该行样式发生变化

     

    图2 鼠标悬停样式效果

    3、表格最后一行为统计行,显示当前一共有多少条数据

    图3 统计行效果

     

     

    4、 点击右下“新增”按钮进入新增页面,输入相关信息后点击添加,完成新增员工信息功能,并且返回到首页显示最新数据,如图4、5所示

    图4 添加员工信息
    图5 添加成功后首页刷新数据

     

     

    5、点击每行最后删除功能时弹出提示框,用户确认后删除该行数据并刷新最新员工数据,如图6所示。

      

    图6 删除确认提示窗口
    图7 删除后刷新数据

     

    6、点击每行更新链接后跳转到更新页面,更新界面显示出要修改的员工信息,更新成功后跳转到首页显示最新数据,如图8、9所示:

      

     图8 更新员工数据
    图9 更新后刷新数据

     

     

    三、数据库设计

    1. 创建数据库(HRDB)。

    2. 创建员工信息表(TB_EMP),结构如下。

    字段名

    说明

    字段类型

    长度

    备注

    id

    员工编号

    int

     

    主键,自增,增量为1

    name

    员工姓名

    varchar

    50

    不能为空

    gender

    员工性别

    varchar

    50

    不能为空

    birthday

    员工生日

    varchar

    50

    不能为空

    phone

    手机号码

    varchar

    11

    不能为空

     

    四、具体要求及推荐实现步骤

    1. 创建数据库,创建员工信息表,添加测试数据(至少添加4条测试数据)。

    2. 创建web工程并创建各个包,导入工程所需的jar文件。

    3. 创建Employee实体类。

    4. 创建BaseDAO工具类使用JDBC完成数据表数据的增删改查。创建Servlet相关类完成功能对应的用户请求处理。

    5. 编写JSP页面进行数据展示,以及新增、修改的界面。

    五、评分标准

    题目:慧心人力资源管理系统

    5

    数据库(提交数据库脚本)

     

    5

    创建数据库及添加测试数据

    5

    正确创建和编写实体类,包含所有属性及方法

    2

    正确创建BaseDao类,包含获取连接及关闭资源方法

    35

    正确创建EmployeeDAO类或者EmployeeMapper接口,使用jdbc

     

    10

    正确创建查询数据返回集合的方法

     

    5

    正确创建删除数据的方法

     

    10

    正确创建更新数据的方法

     

    10

    正确创建新增数据的方法

    30

    Servlet相关处理类

     

    10

    正确创建处理全部数据查询查询请求Servlet类,web.xml中请求映射配置或注解正确 

     

    5

    正确创建处理新增数据请求Servlet类,web.xml中请求映射配置或注解正确

     

    5

    正确创建处理删除数据请求Servlet类,web.xml中请求映射配置或注解正确

     

    5

    正确创建处理更新数据时单个数据查询请求Servlet类,web.xml中请求映射配置或注解正确

     

    5

    正确创建处理数据更新请求Servlet类,web.xml中请求映射配置或注解正确

    18

    JSP相关页面

     

    10

    展示所有数据页面 7分

    显示统计信息3分

     

    3

    修改员工信息页面

     

    5

    新增员工信息页面

    5

    总体编程技术

     

    2

    编码命名规范

     

    3

    程序正常运行,无异常

    总分

    100

    六、实现代码

    1、目录结构:

    2、使用到的包:

    3、Java代码:

    util

    BaseDao.java

    package util;
    
    import java.sql.Connection;
    import java.sql.DriverManager;
    import java.sql.SQLException;
    import java.util.Properties;
    
    
    public class BaseDao {
    	
    	private static String url="jdbc:mysql://localhost:3306/hrdb?useUnicode=true&characterEncoding=UTF-8&useSSL=false";
    	private static String userName="root";
    	private static String password="root";
    	private static String driver="com.mysql.jdbc.Driver";
    	private static Connection connection;
    	private static Properties properties = new Properties();
    	
    	static{
    		try {
    			Class.forName(driver);
    		} catch (ClassNotFoundException e) {
    			e.printStackTrace();
    		}
    	}
    	
    	public static Connection getConnection(){
    		try {
    			if(connection==null||connection.isClosed()){
    				connection = DriverManager.getConnection(url,userName,password);
    			}
    		} catch (SQLException e) {
    			e.printStackTrace();
    		}
    		return connection;
    	}
    
    	public static void close(Connection connection) throws Exception {
    		try {
    			if (connection != null) {
    				connection.close();
    			}
    		} catch (Exception e) {
    			e.printStackTrace();
    			throw new Exception();
    		}
    	}
    	public static void main(String[] args) {
    		System.out.println(getConnection());
    	}
    }
    

    entity

    TbEmp.java

    package entity;
    
    import java.io.Serializable;
    
    public class TbEmp implements Serializable{
    
    	private static final long serialVersionUID = 1L;
    	private Integer id;
    	private String name;
    	private String gender;
    	private String birthday;
    	private String phone;
    	public TbEmp() {
    		super();
    	}
    	@Override
    	public String toString() {
    		return "TbEmp [id=" + id + ", name=" + name + ", gender=" + gender + ", birthday=" + birthday + ", phone="
    				+ phone + "]";
    	}
    	public TbEmp(Integer id, String name, String gender, String birthday, String phone) {
    		super();
    		this.id = id;
    		this.name = name;
    		this.gender = gender;
    		this.birthday = birthday;
    		this.phone = phone;
    	}
    	public Integer getId() {
    		return id;
    	}
    	public void setId(Integer id) {
    		this.id = id;
    	}
    	public String getName() {
    		return name;
    	}
    	public void setName(String name) {
    		this.name = name;
    	}
    	public String getGender() {
    		return gender;
    	}
    	public void setGender(String gender) {
    		this.gender = gender;
    	}
    	public String getBirthday() {
    		return birthday;
    	}
    	public void setBirthday(String birthday) {
    		this.birthday = birthday;
    	}
    	public String getPhone() {
    		return phone;
    	}
    	public void setPhone(String phone) {
    		this.phone = phone;
    	}
    	
    }
    

    mapper

    EmpMapper.java

    package mapper;
    
    import java.util.List;
    
    import entity.TbEmp;
    
    public interface EmpMapper {
    	//查询所有
    	List<TbEmp> queryAll();
    	//添加
    	int addEmp(TbEmp tbEmp);
    	//更新
    	int updateEmp(TbEmp tbEmp);
    	//删除
    	int del(int id);
    }
    

    service

    EmpService.java

    package service;
    
    import java.sql.PreparedStatement;
    import java.sql.ResultSet;
    import java.sql.SQLException;
    import java.util.ArrayList;
    import java.util.List;
    
    import com.mysql.jdbc.Connection;
    
    import entity.TbEmp;
    import mapper.EmpMapper;
    import util.BaseDao;
    
    public class EmpService implements EmpMapper {
    
    	@Override
    	public List<TbEmp> queryAll() {
    		Connection conn = null;
    		String sql = null;
    		try {
    			sql = "select * from tb_emp";
    			conn = (Connection) BaseDao.getConnection();
    			PreparedStatement ps = conn.prepareStatement(sql);
    			ResultSet resultSet = ps.executeQuery();
    			ArrayList<TbEmp> arrayList = new ArrayList<TbEmp>();
    			while (resultSet.next()) {
    				TbEmp tbEmp = new TbEmp();
    				tbEmp.setId(resultSet.getInt("id"));
    				tbEmp.setName(resultSet.getString("name"));
    				tbEmp.setGender(resultSet.getString("gender"));
    				tbEmp.setBirthday(resultSet.getString("birthday"));
    				tbEmp.setPhone(resultSet.getString("phone"));
    				arrayList.add(tbEmp);
    			}
    			if (arrayList.size() > 0) {
    				return arrayList;
    			}
    		} catch (Exception e) {
    			e.printStackTrace();
    		} finally {
    			try {
    				conn.close();
    			} catch (SQLException e) {
    				e.printStackTrace();
    			}
    		}
    		return null;
    	}
    
    	@Override
    	public int addEmp(TbEmp tbEmp) {
    		Connection connection = null;
    		try {
    			String sql = "insert into tb_emp(name,gender,birthday,phone) values(?,?,?,?)";
    			connection = (Connection) BaseDao.getConnection();
    			PreparedStatement ps = connection.prepareStatement(sql);
    			ps.setString(1, tbEmp.getName());
    			ps.setString(2, tbEmp.getGender());
    			ps.setString(3, tbEmp.getBirthday());
    			ps.setString(4, tbEmp.getPhone());
    			int add = ps.executeUpdate();
    			if (add > 0) {
    				return add;
    			}
    		} catch (Exception e) {
    			e.printStackTrace();
    		} finally {
    			try {
    				connection.close();
    			} catch (SQLException e) {
    				e.printStackTrace();
    			}
    		}
    		return 0;
    	}
    
    	@Override
    	public int updateEmp(TbEmp tbEmp) {
    		Connection connection = null;
    		try {
    			String sql = "update tb_emp set name='" + tbEmp.getName() + "',gender='" + tbEmp.getGender()
    					+ "',birthday='" + tbEmp.getBirthday() + "',phone='" + tbEmp.getPhone() + "' where id='"
    					+ tbEmp.getId() + "'";
    			System.out.println(sql);
    			connection = (Connection) BaseDao.getConnection();
    			PreparedStatement ps = connection.prepareStatement(sql);
    			int update = ps.executeUpdate();
    			if (update > 0) {
    				return update;
    			}
    		} catch (Exception e) {
    		}
    		return 0;
    	}
    
    	@Override
    	public int del(int id) {
    		Connection connection = null;
    		String sql = null;
    		try {
    			sql = "delete from tb_emp where id=" + id;
    			connection = (Connection) BaseDao.getConnection();
    			PreparedStatement ps = connection.prepareStatement(sql);
    			int delUpdate = ps.executeUpdate();
    			if (delUpdate > 0) {
    				return delUpdate;
    			}
    		} catch (Exception e) {
    			e.printStackTrace();
    		} finally {
    			try {
    				connection.close();
    			} catch (SQLException e) {
    				e.printStackTrace();
    			}
    		}
    		return 0;
    	}
    
    }
    

    controller

    EmpController.java

    package controller;
    
    import java.util.List;
    
    import entity.TbEmp;
    import mapper.EmpMapper;
    import service.EmpService;
    
    public class EmpController {
    	EmpMapper empMapper=new EmpService();
    	public List<TbEmp> allInfoList(){
    		List<TbEmp> queryAll = empMapper.queryAll();
    		return queryAll;
    	}
    	//添加
    	public int addEmp(TbEmp tbEmp){
    		return empMapper.addEmp(tbEmp);
    	}
    	//更新
    	public int updataEmp(TbEmp tbEmp){
    		return empMapper.updateEmp(tbEmp);
    	}
    	//删除
    	public int delInfo(int id){
    		return empMapper.del(id);
    	}
    	
    }
    

    servlet

    EmpShowServlet.java

    package servlet;
    
    import java.io.IOException;
    import java.util.List;
    
    import javax.servlet.ServletException;
    import javax.servlet.annotation.WebServlet;
    import javax.servlet.http.HttpServlet;
    import javax.servlet.http.HttpServletRequest;
    import javax.servlet.http.HttpServletResponse;
    import javax.servlet.http.HttpSession;
    
    import controller.EmpController;
    import entity.TbEmp;
    
    @WebServlet("/EmpShowServlet")
    public class EmpShowServlet extends HttpServlet {
    	private static final long serialVersionUID = 1L;
           
        public EmpShowServlet() {
            super();
        }
    
    	protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
    		doPost(request, response);
    	}
    
    	protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
    		request.setCharacterEncoding("utf-8");
    		response.setCharacterEncoding("utf-8");
    		EmpController controller=new EmpController();
    		List<TbEmp> tbemp = controller.allInfoList();	
    		HttpSession session = request.getSession();
    		session.setAttribute("empsList", tbemp);
    		request.getRequestDispatcher("main.jsp").forward(request, response);
    	}
    
    }
    

    AddEmpServlet.java

    package servlet;
    
    import java.io.IOException;
    import javax.servlet.ServletException;
    import javax.servlet.annotation.WebServlet;
    import javax.servlet.http.HttpServlet;
    import javax.servlet.http.HttpServletRequest;
    import javax.servlet.http.HttpServletResponse;
    
    import controller.EmpController;
    import entity.TbEmp;
    
    @WebServlet("/AddEmpServlet")
    public class AddEmpServlet extends HttpServlet {
    	private static final long serialVersionUID = 1L;
    
    	public AddEmpServlet() {
    		super();
    	}
    
    	protected void doGet(HttpServletRequest request, HttpServletResponse response)
    			throws ServletException, IOException {
    		doPost(request, response);
    	}
    
    	protected void doPost(HttpServletRequest request, HttpServletResponse response)
    			throws ServletException, IOException {
    		request.setCharacterEncoding("utf-8");
    		response.setCharacterEncoding("utf-8");
    		EmpController controller = new EmpController();
    		String name = request.getParameter("name");
    		String gender = request.getParameter("gender");
    		String birthday = request.getParameter("birthday");
    		String phone = request.getParameter("phone");
    		TbEmp emp = new TbEmp(0, name, gender, birthday, phone);
    		int addEmp = controller.addEmp(emp);
    		if (addEmp > 0) {
    			response.sendRedirect("EmpShowServlet");
    		}
    	}
    
    }
    

    DelServlet.java

    package servlet;
    
    import java.io.IOException;
    import javax.servlet.ServletException;
    import javax.servlet.annotation.WebServlet;
    import javax.servlet.http.HttpServlet;
    import javax.servlet.http.HttpServletRequest;
    import javax.servlet.http.HttpServletResponse;
    
    import controller.EmpController;
    
    @WebServlet("/DelServlet")
    public class DelServlet extends HttpServlet {
    	private static final long serialVersionUID = 1L;
           
        public DelServlet() {
            super();
        }
    
    	protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
    		doPost(request, response);
    	}
    
    	protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
    		EmpController controller=new EmpController();
    		String id=request.getParameter("id");
    		int id1=Integer.parseInt(id);
    		int del = controller.delInfo(id1);
    		if (del>0) {
    			response.sendRedirect("EmpShowServlet");
    		}
    	}
    
    }
    

    UpdatEmpServlet.java

    package servlet;
    
    import java.io.IOException;
    import javax.servlet.ServletException;
    import javax.servlet.annotation.WebServlet;
    import javax.servlet.http.HttpServlet;
    import javax.servlet.http.HttpServletRequest;
    import javax.servlet.http.HttpServletResponse;
    
    import controller.EmpController;
    import entity.TbEmp;
    
    @WebServlet("/UpdatEmpServlet")
    public class UpdataEmpServlet extends HttpServlet {
    	private static final long serialVersionUID = 1L;
           
        public UpdataEmpServlet() {
            super();
        }
    
    	protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
    		doPost(request, response);
    	}
    
    	protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
    		request.setCharacterEncoding("utf-8");
    		response.setCharacterEncoding("utf-8");
    		EmpController controller=new EmpController();
    		Integer id= Integer.parseInt(request.getParameter("id").toString());
    		String name = request.getParameter("name");
    		String gender = request.getParameter("gender");
    		String birthday = request.getParameter("birthday");
    		String phone = request.getParameter("phone");
    		TbEmp emp=new  TbEmp(id,name,gender,birthday,phone);
    		System.out.println(emp.toString());
    		int updatEmp = controller.updataEmp(emp);
    		if (updatEmp>0) {
    			response.sendRedirect("EmpShowServlet");
    		}
    	}
    
    }
    

    4、HTML代码:

    main.jsp

    <%@page import="entity.TbEmp"%>
    <%@page import="java.util.List"%>
    <%@ page language="java" contentType="text/html; charset=utf-8"
    	pageEncoding="utf-8"%>
    <%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%>
    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
    <title>慧心人力资源管理系统</title>
    <style type="text/css">
    body {
    	width: 100%;
    }
    
    .wrap_table {
    	width: 60%;
    	margin: 0 auto;
    	text-align: center;
    }
    
    table {
    	text-align: center;
    	margin: 0 auto;
    }
    
    table tr:nth-last-child(1) {
    	padding-right: 20px;
    }
    
    table th {
    	padding: 10px;
    }
    
    table:nth-last-child(2) tr:hover, table tr:hover a {
    	color: white;
    	background-color: black;
    }
    
    table:nth-last-child(1) tr {align ="left";
    	
    }
    
    table:nth-last-child(1) td {
    	padding: 10px;
    }
    
    table:nth-last-child(2) td {
    	padding: 5px;
    }
    
    #end {
    	text-align: right;
    }
    
    #name {
    	margin-bottom: 10px;
    }
    
    #price {
    	margin-bottom: 10px;
    }
    
    #num {
    	margin-bottom: 10px;
    }
    
    #type {
    	margin-bottom: 10px;
    }
    </style>
    </head>
    <body >
    	<div class="wrap_table">
    		<table border="1" cellspacing="0" cellpadding="0" height="300px">
    			<caption align="top"
    				style="font-size: 1.6rem; height: 50px; font-weight: bold;">人力资源管理</caption>
    			<tr>
    				<th width="80">员工编号</th>
    				<th width="120">员工姓名</th>
    				<th width="80">员工性别</th>
    				<th width="140">员工生日</th>
    				<th width="140">员工手机</th>
    				<th width="120">操作</th>
    			</tr>
    			<%
    				List<TbEmp> empsList = (List<TbEmp>) session.getAttribute("empsList");
    				int i = 0;
    			%>
    			<c:forEach items="${empsList}" var="emp">
    				<tr>
    					<td>${emp.id }</td>
    					<td>${emp.name }</td>
    					<td>${emp.gender }</td>
    					<td>${emp.birthday }</td>
    					<td>${emp.phone }</td>
    					<td><input type="button" onclick="update(this)" class="updata"
    						value="更新" /> <input type="button" onclick="del(${emp.id })"
    						value="删除" /></td>
    				</tr>
    
    			</c:forEach>
    			<tr>
    				<td colspan="6" id="end"><span>共计<%=empsList.size() + 1%>条数据
    				</span> <a href="addEmp.jsp">新增</a></td>
    			</tr>
    
    		</table>
    		<div
    			style="width: 500px; height: 400px; border: 1px solid #000; background-color: white; display: none; position: absolute; left: 40%; top: 10%;"
    			id="UpdataDiv">
    			<form action="UpdatEmpServlet" method="post" id="UpdataForm">
    				<br /> <br />
    				<table border="1" cellspacing="0" cellpadding="0"
    					style="text-align: left;" width="400" height="200">
    					<caption align="top"
    						style="font-size: 1.6rem; height: 50px; font-weight: bold;">更新员工信息</caption>
    					<tr style="display: none">
    						<td><input type="text" name="id" id="id" value=""></td>
    					</tr>
    					<tr>
    						<td>员工姓名:<input type="text" name="name" id="name" value=""></td>
    					</tr>
    					<tr>
    						<td>员工性别:<input id="man" type="radio" name="gender" value="男" />男
    							<input id="woman" type="radio" name="gender" value="女">女
    						</td>
    					</tr>
    					<tr>
    						<td>员工生日:<input id="birthday" name="birthday" type="date"
    							value="" /></td>
    					</tr>
    					<tr>
    						<td>员工号码:<input type="text" name="phone" id="phone" value=""></td>
    					</tr>
    					<tr align="center">
    						<td><input type="submit" value="提交"> <input
    							type="button" value="取消" class="updata2"></td>
    					</tr>
    				</table>
    			</form>
    		</div>
    	</div>
    	<script src="js/jquery-1.9.1.min.js" type="text/javascript"></script>
    	<script type="text/javascript">
    		$(".updata").click(function(){
    			$("#UpdataDiv").css("display","block");
    			
    			});
    		$(".updata2").click(function(){
    			$("#UpdataDiv").css("display","none");
    			});
    			
    		</script>
    	<script type="text/javascript">
    		function update(obj) {
    			   var id=$(obj).parents("tr").children("td").eq(0).text();
    			   var name=$(obj).parents("tr").children("td").eq(1).text();
    			   var gender=$(obj).parents("tr").children("td").eq(2).text();
    			   var birthday=$(obj).parents("tr").children("td").eq(3).text();
    			   var phone=$(obj).parents("tr").children("td").eq(4).text();
    			   document.getElementById("id").value = id;
    			   document.getElementById("name").value = name;
    			   if (gender=="男") {
    					document.getElementById("man").checked = true
    			   }
    			   if (gender=="女") {
    			   		document.getElementById("woman").checked = true
    			   }
    			   document.getElementById("birthday").value = birthday;
    			   document.getElementById("phone").value = phone;  
    			}
    		function  del(id) {
    			 if (confirm("确定删除该数据?")) {
    				window.location.href="DelServlet?id="+id;
    	         }
    		}
    		function a(){
    			$.ajax({  
    	    		url:"EmpShowServlet",//servlet文件的名称
    	    		type:"POST",
    	    		success:function(e){
    	    			alert("servlet调用成功!");
    	    		}
    	    	});
    			
    		}
    		</script>
    </body>
    </html>

    addEmp.jsp

    <%@ page language="java" contentType="text/html; charset=UTF-8"
    	pageEncoding="UTF-8"%>
    <html>
    <head>
    <meta charset="UTF-8">
    <title>慧心人力资源管理系统-添加员工信息</title>
    <style type="text/css">
    body {
    	width: 100%;
    }
    
    .wrap_table {
    	width: 40%;
    	margin: 0 auto;
    	text-align: center;
    }
    
    table {
    	text-align: left;
    	margin: 0 auto;
    	height: 200px;
    	width: 400px;
    }
    
    table td {
    	padding: 10px;
    }
    
    .button_class input {
    	padding: 3px 10px;
    }
    </style>
    </head>
    <body>
    	<div class="wrap_table">
    		<form action="AddEmpServlet" method="post">
    			<table border="1" cellspacing="0" cellpadding="0">
    				<caption align="top"
    					style="font-size: 1.6rem; height: 50px; font-weight: bold;">添加员工信息</caption>
    				<tr>
    					<td>员工姓名:</td>
    					<td><input type="text" name="name" id="name" value="" /></td>
    				</tr>
    				<tr>
    					<td>性别:</td>
    					<td><input id="man" type="radio" checked="checked"
    						name="gender" value="男" />男 <input id="woman" type="radio"
    						name="gender" / value="女">女</td>
    				</tr>
    				<tr>
    					<td>员工生日:</td>
    					<td><input id="birthday" name="birthday" type="date" value="" />
    				</tr>
    				<tr>
    					<td>员工手机:</td>
    					<td><input type="text" name="phone" id="" value="" /></td>
    				</tr>
    				<tr>
    					<td colspan="2" align="center" class="button_class"><input
    						type="submit" name="" id="" value="添加" /> <input type="reset"
    						name="" id="" value="重置" /></td>
    				</tr>
    			</table>
    		</form>
    	</div>
    </body>
    </html>

     

    展开全文
  • 人力资源管理系统 java web 完整项目 包含源码和数据库 人力资源管理系统 java web 完整项目 包含源码和数据库
  • 现象描述:每次打开一个IE时,任务管理器中,并没有Iexplore.exe进程出现,只是看到Explorer.exe进程增加了内存使用。这是因为启动的IE进程都被合并到Explorer.exe进程了。这种情况,会导致打开多个IE窗口访问Appeon...
  • 我们在使用sharepoint 2013的文档库或者资源库的时候,经常会需要用到使用“资源管理器”来管理文档,但是有时候,点击“使用资源管理器打开”,会提示如下错误: 在文件资源管理器中打开此位置时遇到问题,将此网站...
  • java web简单权限管理设计

    万次阅读 多人点赞 2015-03-19 23:23:05
    推荐最新技术springboot版权限管理(java后台通用权限管理系统(springboot)),采用最新技术架构,功能强大! 注:由于该项目比较老,所以没有采用maven管理,建议下载springboot权限管理系统,对学习和使用会更有...
  • 资源管理器的查看菜单中选择选项,然后在文件夹选项的常规中把打开资源管理器时打开的选项修改为此电脑
  • 经常有朋友在使用一些没有带文件管理器的空间时,苦于...在线的Web文件管理器非常地多,尤其是以PHP在线文件管理器最多,但是真正能够满足我们的文件管理需求同时也容易安装和使用的Web文件管理器不是很多。本篇文章部
  • CRM2011资源管理器V2.9发布

    千次阅读 2013-03-10 23:26:17
    CRM2011资源管理器   2.7绿色版下载 2.7安装版下载  CRM2011资源管理器2.7版本新增代码笔记管理功能和实用小工具功能,修改了一个Ribbon工具的Bug。 目前工具具备的功能有: 1、实体的快速查询(支持中文和实体...
  • resource-env-ref元素来指定对管理对象的servlet引用的声明,该对象与servlet环境中的资源相关联 资源名 查找资源时返回的资源类名 :资源的名称 相对于java:comp/env >>context :当web应用查找该资源...
  • vscode资源管理器中调整字体大小的方法: 1.找到vsCodede安装目录 2.点击打开文件所在位置 3.依次找到workbench.desktop.main.css文件,如下图所示 4.然后利用Notepadd++打开编辑,利用快捷键"Ctrl+F"进行文本的搜索....
  • Docke的WEB管理工具

    万次阅读 2018-02-28 14:55:53
    一、shipyard 1.1 概述 Shipyard也是完全基于Docker API,支持container管理...支持container及engine资源限制及图形展示; 支持container实例横向扩展; 支持批量创建,支持images,container,node节点管理;...
  • 快毕业了,开始了毕业设计,大学四年了,总得做出一个像样的... 现在正在做系统的需求分析,这让我犯难了,一来我没有客户,二来自已对公司的人力资源管理也不清楚,而导师呢,对这个系统也没有详细的要求,只是让我自已
  • 最新的Web浏览器都有标签页特性,而Windows自带的资源管理器却没有,总是需要同时打开多个窗口,后来下载了一个插件叫 QTTabbar,可以让资源管理器具备标签页的特性,但总是出问题。除此以外,Windows资源管理器还有...
  • Windows 10 no longer has built-in help for File Explorer, as Windows 7 ... Microsoft makes you search the web for information, so here’s what you need to know about using Windows 10’s file manager. ...
  • 10个开源的基于WEB的文件管理器

    千次阅读 2017-05-02 15:19:00
    因此,下面列出你会用到的10个最好的开源的基于WEB的文件管理器。 eXtplorer: 这个程序为你提供了移动、复制、编辑、搜索、删除、下载和上传功能。此外,你也能用 eXtplorer 创建和提取档案,文件夹和新文件。它...
  • 人力资源管理软件(完全免费)

    千次下载 热门讨论 2011-03-08 11:36:20
    人力资源管理软件功能介绍 本人力资源软件包含人事档案管理 本人力资源软件包含工资管理 本人力资源软件包含考勤管理 本人力资源软件包含绩效管理 本人力资源软件包含用户管理 本人力资源软件软件界面美观,...
  • 解决无法用windows资源管理器打开ftp

    千次阅读 2016-07-05 16:08:52
    点击打开链接
  • Web管理虚拟机平台

    千次阅读 2018-09-07 19:54:22
    考虑到硬件和成本的约束,为了充分利用现有的资源和方便进行管理,需要不同的环境进行实验的时候,建立各种不同的虚拟机进行相关的实验。特别是一些大数据方面的集群实验、区块链多节点的实验、人工智能的分布式计算...
  • window 2003 资源管理器的搜索助理变成空白现象,同时,web浏览器出现某些页面无法正常显示,多半是脚本动态链接库文件损坏,在运行里分别输入: “regsvr32 jscript.dll”“regsvr32 vbscript.dll”。...
  • ASP.NET(1.0/1.1)给我们提供了一个开发WebControl的编程模型,于是我们摆脱了asp里面的include模式的复用方式。不过1.0/1.1提供的Web控件开发模型对于处理没有image、css等外部资源的组件还算比较得心应手,s
  • WEB文件管理系统(无限制破解版)

    热门讨论 2010-07-21 10:59:09
    WEB文件管理系统,适用于企业、校园、个人的网络资源管理、共享使用简单方便,可自定义编辑皮肤,破解使用限制。
  • Java Web权限管理设计及实现

    万次阅读 多人点赞 2018-01-28 13:37:51
    最近在做一个权限相关的功能,在项目原有权限管理上面进行扩展,一方面支持界面上控制到按钮级别,后端接口没有权限不能进行访问;另一个方面,对项目中应用管理模块的应用管理员授权,使其具有对其名下的应用添加...
  • 在使用sharepoint 2013的文档库或者资源库的时候,使用“资源管理器”管理文档,点击“使用资源管理器打开”,提示如下: 在文件资源管理器中打开此位置时遇到问题,将此网站添加到受信任站点列表,然后重试。 或...
  • 你已经创建了一个Web应用程序和一个网站集,我们假设是工作组网站并已经启动。 首先我来描述一下我的环境: WSS 3.0 SP2 Windows Server 2008 R2. Yes, it’s 64-bit edition, it’s the only option SQL Server...
  • 人力资源管理系统 源代码

    热门讨论 2012-05-02 17:41:13
    人力资源管理系统是针对中小型企业对现有员工和新聘员工的一个Web管理平台,主要包括以下功能模块: 员工管理模块:主要用于浏览员工信息、添加员工信息、修改员工信息和删除员工信息。 招聘管理模块:主要用于对...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 608,116
精华内容 243,246
关键字:

web资源管理器