基于SSM框架下的JAVA合同管理系统
每天记录学习,每天会有好⼼情。*^_^*
今天和⼀个朋友共同完成了⼀个合同管理系统项⽬,我们在开发时选⽤的框架是SSM(MYECLIPSE)框架。我这个朋友知识有限,只会这个框架,哈哈,都是为了⽅便他。和往
常⼀样选⽤简单⼜便捷的MYECLIPSE作为开发⼯具,这是⼀个后台项⽬。这个系统的介绍是这样的:该⽂开发的合同管理系统是典型的管理信息系统(MIS),在此系统中,采⽤了
MVC三层结构,因此该系统的实现主要包括后台数据库的建⽴和维护、前端应⽤程序以及中间的应⽤服务器层的开发三个⽅⾯.对于数据库要求建⽴起数据⼀致性和完整性强.数据
安全性好的库;应⽤程序则要求具有功能完备,易使⽤等特点;⽽中间应⽤服务器层则应具备可随企业逻辑变化能灵活改变的性能.全⾯提⾼了软件的质量与⽣产率.⼯程化的思想和⾯
向对象的思想的采⽤,为该软件的成功和快速的开发提供了指导.合同管理系统是⼀个办公⾃动...,⼀个合同管理系统应包含⽤户⾓⾊有管理员。为了能让⽤户顺利登陆系统完成相
关操作,需要为每种登陆⾓⾊设置账户和密码字段。
系统中公司之间存在关联关系,我们将其关联关系保存在合同表中。他们的关联关系是这样的合同的公司与公司的mingzi字段对应、合同的公司id与公司的id字段对应
总结得出该系统所有数据为:管理员(admin)、合同(hetong)、公司(gongsi)
管理员表
字段名|类型|属性|描述
id |INT(11) |PRIMARY KEY|管理员id
username |VARCHAR(255) ||账号
password |VARCHAR(255) ||密码
合同表
ssm框架实现登录功能
字段名|类型|属性|描述
id |INT(11) |PRIMARY KEY|合同id
mingcheng |VARCHAR(255) ||名称
shangchuanshijian |VARCHAR(255) ||上传时间
jieshao |VARCHAR(255) ||介绍
wenjian |VARCHAR(255) ||⽂件
gongsi |VARCHAR(255) ||公司
gongsiid |VARCHAR(255) ||公司id
公司表
字段名|类型|属性|描述
id |INT(11) |PRIMARY KEY|公司id
mingzi |VARCHAR(255) ||名字
jieshao |VARCHAR(255) ||介绍
dizhi |VARCHAR(255) ||地址
lianxifangshi |VARCHAR(255) ||联系⽅式
SET FOREIGN_KEY_CHECKS=0;
-- ----------------------------
-- ----------------------------
-- Table structure for gghetongguanli
-- ----------------------------
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 ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COMMENT='管理员';
-
- ----------------------------
DROP TABLE IF EXISTS `t_hetong`;
CREATE TABLE `t_hetong` (`id` INT(11) NOT NULL AUTO_INCREMENT COMMENT '合同id',`mingcheng` VARCHAR(255) DEFAULT NULL COMMENT '名称',`shangchuanshijian` VARCHAR(255) DEFAULT NULL COMMENT '上传时间) ENGINE=MyISAM DEFAULT CHARSET=utf8 COMMENT='合同';
-- ----------------------------
DROP TABLE IF EXISTS `t_gongsi`;
CREATE TABLE `t_gongsi` (`id` INT(11) NOT NULL AUTO_INCREMENT COMMENT '公司id',`mingzi` VARCHAR(255) DEFAULT NULL COMMENT '名字',`jieshao` VARCHAR(255) DEFAULT NULL COMMENT '介绍',`dizhi` VARCHAR ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COMMENT='公司';
添加合同模块:
系统中存在添加合同功能,通过点击添加合同可以跳转到该功能模块,在该功能模块中,填写对应的合同信息。合同包含信息名称,上传时间,介绍,⽂件,公司,公司id,填写完所有
信息后,通过post⽅法将数据提交到tianjiahetong.action中,该地址将在服务器中hetongController类中的tianjiahetongact⽅法中进⾏响应。响应结果为,获取所有的合同信息,
封装⼀个hetong类,使⽤hetongController类中定义的hetongdao的insert⽅法,将合同数据插⼊到数据库的hetong表中。并给出⽤户提⽰信息,添加合同成功,将该信息保存到
request的message中,该信息将在页⾯中进⾏展⽰。该部分核⼼代码如下:
通过hetongdao的insert⽅法将页⾯传输的合同添加到数据库中 hetongdao.insert(hetong);
将添加合同成功信息,保存到request的message中,在页⾯中给出⽤户提⽰ request.setAttribute("message", "添加合同成功");
返回合同管理界⾯
return "forward:/tianjiahetong.action";
查询合同模块:
在后台中定义合同查询模块,在侧边栏中点击合同管理,可以跳转到界⾯。在该页⾯中通过hetongController中定义hetongguanli响应合同查询模块。在hetongguanli中查询出所
有信息,返回页⾯进⾏循环展⽰。查询⽅法为hetongdao中的selectByexample⽅法。该部分核⼼代码如下:
⽣成合同样例类,通过example定义查询条件 HetongExample example = new HetongExample();
通过hetongdao的selectByExample⽅法查询出所有的合同信息 List hetongall = hetongdao.selectByExample(example);
将合同信息,保存到request中,在页⾯通过foreach⽅法进⾏展⽰ request.setAttribute("hetongall", hetongall);
返回合同管理界⾯
return "forward:/hetongguanli.action";
修改合同模块:
对已经上传的合同信息可以进⾏修改操作,该部分操作在合同管理界⾯中点击修改按钮可以跳转到合同修改页⾯。在修改页⾯中,将初始化所有的合同字段信息,字段信息包括名称,上传时间,介绍,⽂件,公司,公司id。字段信息内容通过合同id获取。修改后的信息传⼊到hetongController中接收为hetong。在hetongController中包含有提前定义好的hetongdao,该参数为hetongMapper是实现。hetongMapper中定义了修改⽅法,此处使⽤修改⽅法为updateByPrimaryKeySelective,该⽅法可以将修改后信息同步到数据库中,最终将修改成功信息返回页⾯中。该部分代码如下:
通过hetongdao的修改⽅法根据id修改对应的合同 hetongdao.updateByPrimaryKeySelective(hetong);
将修改合同成功信息,保存到request的message中,在页⾯中给出⽤户提⽰ request.setAttribute("message", "修改合同信息成功");
返回合同管理界⾯
return "forward:/hetongguanli.action";
删除合同模块:
在管理页⾯中,点击删除。页⾯将通过a标签的href属性,使⽤get⽅法将该合同
的id上传到服务器中,在服务器中通过hetongController类中的shanchuhetong进⾏接收,之后调⽤hetongMapper中的deleteByPrimaryKey⽅法根据ID进⾏删除。将删除信息保存到request的message中,在页⾯给出⽤户删除成功的提⽰信息,该部分核⼼代码如下:
通过hetongdao的删除⽅法根据id删除对应的合同 hetongdao.deleteByPrimaryKey(id);
将删除合同成功信息,保存到request的message中,在页⾯中给出⽤户提⽰ request.setAttribute("message", "删除合同成功");
返回合同管理界⾯
return "forward:/hetongguanli.action";

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。