每天都要认真学习,才能更加进步。└(^o^)┘
在工作和学习的过程中要善于思考,勤于学习。并做出适当的记录,才能最快速的学习并掌握一项知识。希望在这个平台和大家一起共同成长,和大家分享一个SSM(MYECLIPSE)项目,该项目名称为基于javaee的在线电子报销系统。采用当前非常流行的B/S体系结构,以JAVAEE作为开发技术,主要依赖SSM技术框架,mysql数据库建立本系统。本文介绍的是在一个网上旅费报销系统的开发过程中对J2EE技术的应用。在当今竞争激烈的市场中,软件开发商正面临着一种艰难的挑战:既要在业已缩短的开发周期内降低成本,又要提供广泛的电子商务服务。
大家在学习中编写SSM(MYECLIPSE)框架的项目时常选用的开发工具是MYECLIPSE,从上面的项目背景中,我们可以得出基于javaee的在线电子报销系统拥有 后台。才能让用户完整的使用该项目。
基于javaee的在线电子报销系统项目的登录角色包括了管理员、员工,系统中所有的用户都是拥有账号密码字段的。其中管理员只能在后台和数据库进行添加。而其余的登录角色可以通过注册的方式成功拥有系统账号密码。
在系统的功能中,报销是一个重要的表。这个表使得员工关联了起来。在报销表中报销的员工与员工的mingzi字段对应、报销的员工id与员工的id字段对应
,他们拥有关联关系。

总结得出基于javaee的在线电子报销系统项目所有数据为:管理员(admin)、员工(yuangong)、报销(baoxiao)

基于javaee的在线电子报销系统之管理员表

字段名 | 类型 | 属性 | 描述
id | INT(11) | PRIMARY KEY | 管理员id
username | VARCHAR(255) | | 账号
password | VARCHAR(255) | | 密码

基于javaee的在线电子报销系统之员工表

字段名 | 类型 | 属性 | 描述
id | INT(11) | PRIMARY KEY | 员工id
username | VARCHAR(255) | | 账号
password | VARCHAR(255) | | 密码
gonghao | VARCHAR(255) | | 工号
mingzi | VARCHAR(255) | | 名字
bumen | VARCHAR(255) | | 部门
gangwei | VARCHAR(255) | | 岗位

基于javaee的在线电子报销系统之报销表

字段名 | 类型 | 属性 | 描述
id | INT(11) | PRIMARY KEY | 报销id
biaoti | VARCHAR(255) | | 标题
neirong | VARCHAR(255) | | 内容
zhengming | VARCHAR(255) | | 证明
yuangong | VARCHAR(255) | | 员工
yuangongid | VARCHAR(255) | | 员工id
shijian | VARCHAR(255) | | 时间
SET FOREIGN_KEY_CHECKS=0;

-- ----------------------------

-- ----------------------------

-- Table structure for ggjyjavaeedzxdzbxxt

-- ----------------------------

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_yuangong`;

CREATE TABLE `t_yuangong` (`id` INT(11) NOT NULL AUTO_INCREMENT COMMENT '员工id',`username` VARCHAR(255) DEFAULT NULL COMMENT '账号',`password` VARCHAR(255) DEFAULT NULL COMMENT '密码',`gonghao` VARCHAR(255) DEFAULT NULL COMMENT '工号',`mingzi` VARCHAR(255) DEFAULT NULL COMMENT '名字',`bumen` VARCHAR(255) DEFAULT NULL COMMENT '部门',`gangwei` VARCHAR(255) DEFAULT NULL COMMENT '岗位',PRIMARY KEY (`id`)

) ENGINE=MyISAM DEFAULT CHARSET=utf8 COMMENT='员工';

-- ----------------------------

DROP TABLE IF EXISTS `t_baoxiao`;

CREATE TABLE `t_baoxiao` (`id` INT(11) NOT NULL AUTO_INCREMENT COMMENT '报销id',`biaoti` VARCHAR(255) DEFAULT NULL COMMENT '标题',`neirong` VARCHAR(255) DEFAULT NULL COMMENT '内容',`zhengming` VARCHAR(255) DEFAULT NULL COMMENT '证明',`yuangong` VARCHAR(255) DEFAULT NULL COMMENT '员工',`yuangongid` INT(11) DEFAULT NULL COMMENT '员工id',`shijian` VARCHAR(255) DEFAULT NULL COMMENT '时间',PRIMARY KEY (`id`)

) ENGINE=MyISAM DEFAULT CHARSET=utf8 COMMENT='报销';

添加报销模块:

在baoxiaoController中定义tianjiabaoxiaoact接收页面传入的报销参数,定义为baoxiao。其中baoxiao包含字段:标题,内容,证明,员工,员工id,时间,使用tianjiabaoxiaoact将该报销对象存入数据库中,在baoxiaoMapper中定义了insert方法,匹配数据库中的insert into baoxiao语句实现将报销数据存入数据库的操作。该部分核心代码如下:

通过baoxiaodao的insert方法将页面传输的报销添加到数据库中 baoxiaodao.insert(baoxiao);

将添加报销成功信息,保存到request的message中,在页面中给出用户提示 request.setAttribute("message", "添加报销成功");

返回报销管理界面

return "forward:/tianjiabaoxiao.action";

查询报销模块:

在后台baoxiaoguanli方法中,通过selectByexample方法获取所有的数据信息。将其保存到request中,在页面中通过foreach方法

进行循环展示到table中。完成报销查询操作。具体代码如下:

生成报销样例类,通过example定义查询条件 BaoxiaoExample example = new BaoxiaoExample();

通过baoxiaodao的selectByExample方法查询出所有的报销信息 List baoxiaoall = baoxiaodao.selectByExample(example);

将报销信息,保存到request中,在页面通过foreach方法进行展示 request.setAttribute("baoxiaoall", baoxiaoall);

返回报销管理界面

return "forward:/baoxiaoguanli.action";

修改报销模块:

在页面填写完修改信息后,点击修改按钮,将数据提交到xiugaibaoxiao中,封装为一个报销

,使用update方法修改该报销信息,将数据同步到数据库,完成修改操作。

定义修改成功提示信息,修改报销成功,并保存到request中具体代码如下:

通过baoxiaodao的修改方法根据id修改对应的报销 baoxiaodao.updateByPrimaryKeySelective(baoxiao);

将修改报销成功信息,保存到request的message中,在页面中给出用户提示 request.setAttribute("message", "修改报销信息成功");

返回报销管理界面

return "forward:/baoxiaoguanli.action";

删除报销模块:

删除报销功能的实现方式为,通过点击删除报销按钮,向服务器发起get请求。请求中包含报销的id信息,在baoxiaoController中使用int接受该id,并将该id传入baoxiaodao的deleteByPrimaryKey方法中。该方法的作用为根据id删除对应报销。最后将删除报销成功的信息返回页面,该部分核心代码如下:

通过baoxiaodao的删除方法根据id删除对应的报销 baoxiaodao.deleteByPrimaryKey(id);

将删除报销成功信息,保存到request的message中,在页面中给出用户提示 request.setAttribute("message", "删除报销成功");

返回报销管理界面

return "forward:/baoxiaoguanli.action";

源码下载

02-13 13:02