基于SSM框架下的JAVA工伤事故管理系统
每天记录学习,每天会有好心情。*^_^*
在学习工伤事故管理系统项目的时候,方便日后能及时查阅,在本平台中记录一下该项目的开发流程。在学习时候的选用了SSM(MYECLIPSE),这个框架不论是学习还是使用都非常方便,简单易上手。是我们学习编程可以重点学习的一个框架,我在开发工伤事故管理系统项目的时候选用了MYECLIPSE来搭建SSM(MYECLIPSE)框架,最终将工伤事故管理系统项目开发为了一个 后台项目。
该项目具有的用户角色包括了管理员、职工,每个角色都含有自己的登录账号和密码。
在系统的功能中,伤情是一个重要的表。这个表使得职工关联了起来。在伤情表中伤情的职工与职工的mingzi字段对应、伤情的职工id与职工的id字段对应
,他们拥有关联关系。
总结得出该系统所有数据为:管理员(admin)、职工(zhigong)、伤情(shangqing)
管理员表
字段名 | 类型 | 属性 | 描述 id | INT(11) | PRIMARY KEY | 管理员id username | VARCHAR(255) | | 账号 password | VARCHAR(255) | | 密码
职工表
字段名 | 类型 | 属性 | 描述 id | INT(11) | PRIMARY KEY | 职工id mingzi | VARCHAR(255) | | 名字 username | VARCHAR(255) | | 账号 password | VARCHAR(255) | | 密码 xingbie | VARCHAR(255) | | 性别 nianling | VARCHAR(255) | | 年龄
伤情表
字段名 | 类型 | 属性 | 描述 id | INT(11) | PRIMARY KEY | 伤情id zhigong | VARCHAR(255) | | 职工 zhigongid | VARCHAR(255) | | 职工id shangqing | VARCHAR(255) | | 伤情 chulifangshi | VARCHAR(255) | | 处理方式 jibie | VARCHAR(255) | | 级别
SET FOREIGN_KEY_CHECKS=0; -- ---------------------------- -- ---------------------------- -- Table structure for gggongshangshigu -- ---------------------------- 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_zhigong`; CREATE TABLE `t_zhigong` (`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 '密码',`xingbie` VARCHAR(255) DEFAULT NULL COMMENT '性别',`nianling` VARCHAR(255) DEFAULT NULL COMMENT '年龄',PRIMARY KEY (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COMMENT='职工'; -- ---------------------------- DROP TABLE IF EXISTS `t_shangqing`; CREATE TABLE `t_shangqing` (`id` INT(11) NOT NULL AUTO_INCREMENT COMMENT '伤情id',`zhigong` VARCHAR(255) DEFAULT NULL COMMENT '职工',`zhigongid` INT(11) DEFAULT NULL COMMENT '职工id',`shangqing` VARCHAR(5000) DEFAULT NULL COMMENT '伤情',`chulifangshi` VARCHAR(5000) DEFAULT NULL COMMENT '处理方式',`jibie` VARCHAR(255) DEFAULT NULL COMMENT '级别',PRIMARY KEY (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COMMENT='伤情';
添加伤情模块:
通过添加伤情模块,可以完成伤情的添加操作。在页面中跳转到添加伤情页面,输入伤情的所有信息,点击添加操作,可以将伤情数据以post提交到shangqingController中。伤情所包含的字段信息包括职工,职工id,伤情,处理方式,级别。在shangqingController中通过定义shangqing接受所有的伤情参数。使用shangqingdao的insert方法将shangqing实体插入到数据库中。完成数据的添加操作,在shangqingMapper中匹配对应的shangqingxml完成插入sql语句的执行操作。该部分核心代码如下:
通过shangqingdao的insert方法将页面传输的伤情添加到数据库中 shangqingdao.insert(shangqing);
将添加伤情成功信息,保存到request的message中,在页面中给出用户提示 request.setAttribute("message", "添加伤情成功");
返回伤情管理界面
return "forward:/tianjiashangqing.action";
查询伤情模块:
在后台shangqingguanli方法中,通过selectByexample方法获取所有的数据信息。将其保存到request中,在页面中通过foreach方法
进行循环展示到table中。完成伤情查询操作。具体代码如下:
生成伤情样例类,通过example定义查询条件 ShangqingExample example = new ShangqingExample();
通过shangqingdao的selectByExample方法查询出所有的伤情信息 List shangqingall = shangqingdao.selectByExample(example);
将伤情信息,保存到request中,在页面通过foreach方法进行展示 request.setAttribute("shangqingall", shangqingall);
返回伤情管理界面
return "forward:/shangqingguanli.action";
修改伤情模块:
点击修改按钮,可以跳转到伤情修改页面。在伤情修改页面中,将初始化该伤情的所有信息,并将信息一一对应填充到对应编辑栏中。编辑完伤情信息后,页面通过post方法将数据封装为一个伤情实体,传入到shangqingController中。在xiugaishangqing中进行接收,接收完毕后,调用shangqingMapper中的updateByPrimaryKeySelective方法进行修改。该部分代码如下:
通过shangqingdao的修改方法根据id修改对应的伤情 shangqingdao.updateByPrimaryKeySelective(shangqing);
将修改伤情成功信息,保存到request的message中,在页面中给出用户提示 request.setAttribute("message", "修改伤情信息成功");
返回伤情管理界面
return "forward:/shangqingguanli.action";
删除伤情模块:
删除伤情功能的实现方式为,通过点击删除伤情按钮,向服务器发起get请求。请求中包含伤情的id信息,在shangqingController中使用int接受该id,并将该id传入shangqingdao的deleteByPrimaryKey方法中。该方法的作用为根据id删除对应伤情。最后将删除伤情成功的信息返回页面,该部分核心代码如下:
通过shangqingdao的删除方法根据id删除对应的伤情 shangqingdao.deleteByPrimaryKey(id);
将删除伤情成功信息,保存到request的message中,在页面中给出用户提示 request.setAttribute("message", "删除伤情成功");
返回伤情管理界面
return "forward:/shangqingguanli.action";