每天记录学习,每天会有好心情。*^_^*
今天记录的项目是基于JAVA的人事管理系统,采用当前非常流行的B/S体系结构,以JSP作为开发技术,主要依赖SSM技术框架,mysql数据库建立本系统。
做基于JAVA的人事管理系统的时候,我们需要用到SSM(MYECLIPSE)框架,开发工具选用最拿手的MYECLIPSE。
基于JAVA的人事管理系统项目是一个 后台项目。
开发系统时,需求分析是必不可少的一个环节。基于JAVA的人事管理系统拥有的登录角色包括了管理员、员工。
每个账号设置身份、账号、密码是必不可少的,管理员、员工中都包含这些登录角色该有的字段。
工资联系了员工,通过关联使得员工之间建立了联系,加强了系统的实用性和便捷性。增强了用户体验。他们之间的关联关系是工资的员工与员工的mingzi字段对应、工资的员工id与员工的id字段对应
。系统中部门之间存在关联关系,我们将其关联关系保存在员工表中。他们的关联关系是这样的员工的部门与部门的mingzi字段对应、员工的部门id与部门的id字段对应.
总结得出基于JAVA的人事管理系统项目所有数据为:管理员(admin)、工资(gongzi)、员工(yuangong)、部门(bumen)
基于JAVA的人事管理系统之管理员表
字段名 | 类型 | 属性 | 描述 id | INT(11) | PRIMARY KEY | 管理员id username | VARCHAR(255) | | 账号 password | VARCHAR(255) | | 密码
基于JAVA的人事管理系统之工资表
字段名 | 类型 | 属性 | 描述 id | INT(11) | PRIMARY KEY | 工资id yuangong | VARCHAR(255) | | 员工 yuangongid | VARCHAR(255) | | 员工id yuefen | VARCHAR(255) | | 月份 jichugongzi | VARCHAR(255) | | 基础工资 ticheng | VARCHAR(255) | | 提成
基于JAVA的人事管理系统之员工表
字段名 | 类型 | 属性 | 描述 id | INT(11) | PRIMARY KEY | 员工id mingzi | VARCHAR(255) | | 名字 username | VARCHAR(255) | | 账号 password | VARCHAR(255) | | 密码 bumen | VARCHAR(255) | | 部门 bumenid | VARCHAR(255) | | 部门id
基于JAVA的人事管理系统之部门表
字段名 | 类型 | 属性 | 描述 id | INT(11) | PRIMARY KEY | 部门id mingzi | VARCHAR(255) | | 名字
SET FOREIGN_KEY_CHECKS=0; -- ---------------------------- -- ---------------------------- -- Table structure for ggjyJAVAdrsglxt -- ---------------------------- DROP TABLE IF EXISTS `t_admin`; CREATE TABLE `t_admin` (`id` INT(11) NOT NULL AUTO_INCREMENT COMMENT '管理员id',`username` VARCHAR(255) DEFAULT NULL COMMENT '账号',`password` VARCHAR(255) DEFAULT NULL COMMENT '密码',PRIMARY KEY (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COMMENT='管理员'; -- ---------------------------- DROP TABLE IF EXISTS `t_gongzi`; CREATE TABLE `t_gongzi` (`id` INT(11) NOT NULL AUTO_INCREMENT COMMENT '工资id',`yuangong` VARCHAR(255) DEFAULT NULL COMMENT '员工',`yuangongid` INT(11) DEFAULT NULL COMMENT '员工id',`yuefen` VARCHAR(255) DEFAULT NULL COMMENT '月份',`jichugongzi` VARCHAR(255) DEFAULT NULL COMMENT '基础工资',`ticheng` VARCHAR(255) DEFAULT NULL COMMENT '提成',PRIMARY KEY (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COMMENT='工资'; -- ---------------------------- DROP TABLE IF EXISTS `t_yuangong`; CREATE TABLE `t_yuangong` (`id` INT(11) NOT NULL AUTO_INCREMENT COMMENT '员工id',`mingzi` VARCHAR(255) DEFAULT NULL COMMENT '名字',`username` VARCHAR(255) DEFAULT NULL COMMENT '账号',`password` VARCHAR(255) DEFAULT NULL COMMENT '密码',`bumen` VARCHAR(255) DEFAULT NULL COMMENT '部门',`bumenid` INT(11) DEFAULT NULL COMMENT '部门id',PRIMARY KEY (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COMMENT='员工'; -- ---------------------------- DROP TABLE IF EXISTS `t_bumen`; CREATE TABLE `t_bumen` (`id` INT(11) NOT NULL AUTO_INCREMENT COMMENT '部门id',`mingzi` VARCHAR(255) DEFAULT NULL COMMENT '名字',PRIMARY KEY (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COMMENT='部门';
添加工资模块:
通过添加工资模块,可以完成工资的添加操作。在页面中跳转到添加工资页面,输入工资的所有信息,点击添加操作,可以将工资数据以post提交到gongziController中。工资所包含的字段信息包括员工,员工id,月份,基础工资,提成。在gongziController中通过定义gongzi接受所有的工资参数。使用gongzidao的insert方法将gongzi实体插入到数据库中。完成数据的添加操作,在gongziMapper中匹配对应的gongzixml完成插入sql语句的执行操作。该部分核心代码如下:
通过gongzidao的insert方法将页面传输的工资添加到数据库中 gongzidao.insert(gongzi);
将添加工资成功信息,保存到request的message中,在页面中给出用户提示 request.setAttribute("message", "添加工资成功");
返回工资管理界面
return "forward:/tianjiagongzi.action";
查询工资模块:
在后台gongziguanli方法中,通过selectByexample方法获取所有的数据信息。将其保存到request中,在页面中通过foreach方法
进行循环展示到table中。完成工资查询操作。具体代码如下:
生成工资样例类,通过example定义查询条件 GongziExample example = new GongziExample();
通过gongzidao的selectByExample方法查询出所有的工资信息 List gongziall = gongzidao.selectByExample(example);
将工资信息,保存到request中,在页面通过foreach方法进行展示 request.setAttribute("gongziall", gongziall);
返回工资管理界面
return "forward:/gongziguanli.action";
修改工资模块:
在页面完成工资的修改信息填写后,将该部分数据传入xiugaigongzi.action地址,并通过post进行提交。提交后在gongziController中通过xiugaigongzi进行接收,将所有字段封装为一个工资实体。并将该实体传入gongzidao中的updateByPrimaryKeySelective方法中,在该方法中定义了通过工资id更新其余工资的字段,该部分字段包括员工,员工id,月份,基础工资,提成,该部分核心代码如下所示:
通过gongzidao的修改方法根据id修改对应的工资 gongzidao.updateByPrimaryKeySelective(gongzi);
将修改工资成功信息,保存到request的message中,在页面中给出用户提示 request.setAttribute("message", "修改工资信息成功");
返回工资管理界面
return "forward:/gongziguanli.action";
删除工资模块:
在页面中通过a标签,shanchugongzi?id=将id传入到后台中,通过shanchugongzi接收工资id。使用deleteByid的方法
删除该工资,完成删除操作。定义删除成功提示信息,删除工资成功,并保存到request中,该部分代码如下:
通过gongzidao的删除方法根据id删除对应的工资 gongzidao.deleteByPrimaryKey(id);
将删除工资成功信息,保存到request的message中,在页面中给出用户提示 request.setAttribute("message", "删除工资成功");
返回工资管理界面
return "forward:/gongziguanli.action";