基于SSM框架的JAVA网上教务系统

最近了解了网上教务系统项目,在这个平台记录一下这个网上教务系统项目,方便以后再次使用或学习的时候能够及时的翻阅。在完成这个项目的时候,考虑了很多框架。最终决定选用SSM(MYECLIPSE),该框架具有极强的移植性,多平台性,便于操作性等优点。此框架能在MYECLIPSE开发工具中完美的编写和运行,网上教务系统为一个 后台项目。这个项目的描述是这样的:本文就目前高校校园网上运行的教务管理系统的结构、流程与功能、数据库、编码等应用软件的设计进行了全面的阐述,并已在实践中,取得了较好的效果,促进了高校教务管理的科学化和现代化。高等教育的高速发展,高校规模的不断扩大,加大了高校教务管理的难度,这就要求高等学校必须采用更现代化的管理手段.本文着重阐述了基于B/S结构的网上综合教务管理系统的设计与实现,以及系统的主要功能。
在对网上教务系统项目进行需求分析的时候,得出系统的登录角色包括了管理员、用户。对应用户可以通过登录自己的账号,进行入系统。系统对不同角色拥有不同权限。

总结得出该系统所有数据为:管理员(admin)、用户(yonhhu)、学生信息(xueshengxinxi)、教师信息(jiaoshixinxi)、财务信息(caiwuxinxi)

管理员表

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

用户表

字段名 | 类型 | 属性 | 描述
id | INT(11) | PRIMARY KEY | 用户id
xingming | VARCHAR(255) | | 姓名
zhiwu | VARCHAR(255) | | 职务
nianling | VARCHAR(255) | | 年龄
xingbie | VARCHAR(255) | | 性别
username | VARCHAR(255) | | 账号
password | VARCHAR(255) | | 密码

学生信息表

字段名 | 类型 | 属性 | 描述
id | INT(11) | PRIMARY KEY | 学生信息id
xingming | VARCHAR(255) | | 姓名
nianling | VARCHAR(255) | | 年龄
nianji | VARCHAR(255) | | 年级
xingbie | VARCHAR(255) | | 性别

教师信息表

字段名 | 类型 | 属性 | 描述
id | INT(11) | PRIMARY KEY | 教师信息id
xingminbg | VARCHAR(255) | | 姓名
zhiwu | VARCHAR(255) | | 职务
nianling | VARCHAR(255) | | 年龄
xingbie | VARCHAR(255) | | 性别
rongyu | VARCHAR(255) | | 荣誉

财务信息表

字段名 | 类型 | 属性 | 描述
id | INT(11) | PRIMARY KEY | 财务信息id
gonbgzizhichu | VARCHAR(255) | | 工资支出
xuefeishouru | VARCHAR(255) | | 学费收入
jianglizijin | VARCHAR(255) | | 奖励资金
wenhuazhichu | VARCHAR(255) | | 文化支出
SET FOREIGN_KEY_CHECKS=0;

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

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

-- Table structure for ggwangshangjiaowuxt

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

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 '密码',`quanxian` VARCHAR(255) DEFAULT NULL COMMENT '权限',PRIMARY KEY (`id`)

) ENGINE=MyISAM DEFAULT CHARSET=utf8 COMMENT='管理员';

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

DROP TABLE IF EXISTS `t_yonhhu`;

CREATE TABLE `t_yonhhu` (`id` INT(11) NOT NULL AUTO_INCREMENT COMMENT '用户id',`xingming` VARCHAR(255) DEFAULT NULL COMMENT '姓名',`zhiwu` VARCHAR(255) DEFAULT NULL COMMENT '职务',`nianling` VARCHAR(255) DEFAULT NULL COMMENT '年龄',`xingbie` VARCHAR(255) DEFAULT NULL COMMENT '性别',`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_xueshengxinxi`;

CREATE TABLE `t_xueshengxinxi` (`id` INT(11) NOT NULL AUTO_INCREMENT COMMENT '学生信息id',`xingming` VARCHAR(255) DEFAULT NULL COMMENT '姓名',`nianling` VARCHAR(255) DEFAULT NULL COMMENT '年龄',`nianji` VARCHAR(255) DEFAULT NULL COMMENT '年级',`xingbie` VARCHAR(255) DEFAULT NULL COMMENT '性别',PRIMARY KEY (`id`)

) ENGINE=MyISAM DEFAULT CHARSET=utf8 COMMENT='学生信息';

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

DROP TABLE IF EXISTS `t_jiaoshixinxi`;

CREATE TABLE `t_jiaoshixinxi` (`id` INT(11) NOT NULL AUTO_INCREMENT COMMENT '教师信息id',`xingminbg` VARCHAR(255) DEFAULT NULL COMMENT '姓名',`zhiwu` VARCHAR(255) DEFAULT NULL COMMENT '职务',`nianling` VARCHAR(255) DEFAULT NULL COMMENT '年龄',`xingbie` VARCHAR(255) DEFAULT NULL COMMENT '性别',`rongyu` VARCHAR(255) DEFAULT NULL COMMENT '荣誉',PRIMARY KEY (`id`)

) ENGINE=MyISAM DEFAULT CHARSET=utf8 COMMENT='教师信息';

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

DROP TABLE IF EXISTS `t_caiwuxinxi`;

CREATE TABLE `t_caiwuxinxi` (`id` INT(11) NOT NULL AUTO_INCREMENT COMMENT '财务信息id',`gonbgzizhichu` VARCHAR(255) DEFAULT NULL COMMENT '工资支出',`xuefeishouru` VARCHAR(255) DEFAULT NULL COMMENT '学费收入',`jianglizijin` VARCHAR(255) DEFAULT NULL COMMENT '奖励资金',`wenhuazhichu` VARCHAR(255) DEFAULT NULL COMMENT '文化支出',PRIMARY KEY (`id`)

) ENGINE=MyISAM DEFAULT CHARSET=utf8 COMMENT='财务信息';

添加财务信息模块:

在caiwuxinxiController中定义tianjiacaiwuxinxiact接收页面传入的财务信息参数,定义为caiwuxinxi。其中caiwuxinxi包含字段:工资支出,学费收入,奖励资金,文化支出,使用tianjiacaiwuxinxiact将该财务信息对象存入数据库中,在caiwuxinxiMapper中定义了insert方法,匹配数据库中的insert into caiwuxinxi语句实现将财务信息数据存入数据库的操作。该部分核心代码如下:

通过caiwuxinxidao的insert方法将页面传输的财务信息添加到数据库中 caiwuxinxidao.insert(caiwuxinxi);

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

返回财务信息管理界面

return "forward:/tianjiacaiwuxinxi.action";

查询财务信息模块:

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

进行循环展示到table中。完成财务信息查询操作。具体代码如下:

生成财务信息样例类,通过example定义查询条件 CaiwuxinxiExample example = new CaiwuxinxiExample();

通过caiwuxinxidao的selectByExample方法查询出所有的财务信息信息 List caiwuxinxiall = caiwuxinxidao.selectByExample(example);

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

返回财务信息管理界面

return "forward:/caiwuxinxiguanli.action";

修改财务信息模块:

对已经上传的财务信息信息可以进行修改操作,该部分操作在财务信息管理界面中点击修改按钮可以跳转到财务信息修改页面。在修改页面中,将初始化所有的财务信息字段信息,字段信息包括工资支出,学费收入,奖励资金,文化支出。字段信息内容通过财务信息id获取。修改后的信息传入到caiwuxinxiController中接收为caiwuxinxi。在caiwuxinxiController中包含有提前定义好的caiwuxinxidao,该参数为caiwuxinxiMapper是实现。caiwuxinxiMapper中定义了修改方法,此处使用修改方法为updateByPrimaryKeySelective,该方法可以将修改后信息同步到数据库中,最终将修改成功信息返回页面中。该部分代码如下:

通过caiwuxinxidao的修改方法根据id修改对应的财务信息 caiwuxinxidao.updateByPrimaryKeySelective(caiwuxinxi);

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

返回财务信息管理界面

return "forward:/caiwuxinxiguanli.action";

删除财务信息模块:

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

通过caiwuxinxidao的删除方法根据id删除对应的财务信息 caiwuxinxidao.deleteByPrimaryKey(id);

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

返回财务信息管理界面

return "forward:/caiwuxinxiguanli.action";

猜你喜欢

转载自www.cnblogs.com/rt14/p/11580148.html