基于SSM框架下的JAVA网上军事论坛

今日思考,完成一个网上军事论坛项目,需要实现哪些功能?
此类项目常见描述如下:
网上论坛作为互联网中运用最为广泛的交流场所之一,如今都已被广大网民接受,它的主要作用是用来帮助浏览者相互沟通。论坛发展到现在已经具有了许多功能:发表文章、回复主题、帖子搜索、数据备份、言论过滤等功能。 本系统首先经过需求分析,确定了7个操作对象(游客、会员、文章主题、帖子、留言、公告信息、管理人员),其次根据操作对象划分出8大功能模块(注册登录模块、主题模块、帖子模块、留言模块、公告信息模块、成员信息模块、网站统计信息模块、退出模块),最后开发出一个简易的网上论坛系统软件,主要实现发表新文章、回帖、留言、发布公告以及网站流量统计等基本功能。
SSM(MYECLIPSE)框架及其适合本类项目,使用MVC的思想可以极大程度减少重复工作量。和SSM(MYECLIPSE)框架最配的开发工具是MYECLIPSE。MYECLIPSE集成了大量插件,可以更好的使用SSM(MYECLIPSE)进行项目的开发,使得项目开发时事半功倍。
通过对网上军事论坛系统的仔细分析,可以得出网上军事论坛系统是一个 后台项目。
在这样一个项目中,系统的登录角色是必不可少的,对每个登录角色设置账号、密码。以确保系统可以正常登录使用。SSM(MYECLIPSE)项目中包含的登录角色有管理员、用户。

总结得出该系统所有数据为:管理员(admin)、用户(yonghu)、公告信息(gonggaoxinxi)、留言模块(liuyanmokuai)

管理员表

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

用户表

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

公告信息表

字段名 | 类型 | 属性 | 描述
id | INT(11) | PRIMARY KEY | 公告信息id
shijian | VARCHAR(255) | | 时间
biaoti | VARCHAR(255) | | 标题
neirong | VARCHAR(255) | | 内容
faburen | VARCHAR(255) | | 发布人

留言模块表

字段名 | 类型 | 属性 | 描述
id | INT(11) | PRIMARY KEY | 留言模块id
shijian | VARCHAR(255) | | 时间
neirong | VARCHAR(255) | | 内容
liuyanren | VARCHAR(255) | | 留言人
SET FOREIGN_KEY_CHECKS=0;

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

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

-- Table structure for ggwangshangjunshiluntan

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

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

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

CREATE TABLE `t_gonggaoxinxi` (`id` INT(11) NOT NULL AUTO_INCREMENT COMMENT '公告信息id',`shijian` VARCHAR(255) DEFAULT NULL COMMENT '时间',`biaoti` VARCHAR(255) DEFAULT NULL COMMENT '标题',`neirong` VARCHAR(255) DEFAULT NULL COMMENT '内容',`faburen` VARCHAR(255) DEFAULT NULL COMMENT '发布人',PRIMARY KEY (`id`)

) ENGINE=MyISAM DEFAULT CHARSET=utf8 COMMENT='公告信息';

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

DROP TABLE IF EXISTS `t_liuyanmokuai`;

CREATE TABLE `t_liuyanmokuai` (`id` INT(11) NOT NULL AUTO_INCREMENT COMMENT '留言模块id',`shijian` VARCHAR(255) DEFAULT NULL COMMENT '时间',`neirong` VARCHAR(255) DEFAULT NULL COMMENT '内容',`liuyanren` VARCHAR(255) DEFAULT NULL COMMENT '留言人',PRIMARY KEY (`id`)

) ENGINE=MyISAM DEFAULT CHARSET=utf8 COMMENT='留言模块';

添加留言模块模块:

通过添加留言模块模块,可以完成留言模块的添加操作。在页面中跳转到添加留言模块页面,输入留言模块的所有信息,点击添加操作,可以将留言模块数据以post提交到liuyanmokuaiController中。留言模块所包含的字段信息包括时间,内容,留言人。在liuyanmokuaiController中通过定义liuyanmokuai接受所有的留言模块参数。使用liuyanmokuaidao的insert方法将liuyanmokuai实体插入到数据库中。完成数据的添加操作,在liuyanmokuaiMapper中匹配对应的liuyanmokuaixml完成插入sql语句的执行操作。该部分核心代码如下:

通过liuyanmokuaidao的insert方法将页面传输的留言模块添加到数据库中 liuyanmokuaidao.insert(liuyanmokuai);

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

返回留言模块管理界面

return "forward:/tianjialiuyanmokuai.action";

查询留言模块模块:

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

进行循环展示到table中。完成留言模块查询操作。具体代码如下:

生成留言模块样例类,通过example定义查询条件 LiuyanmokuaiExample example = new LiuyanmokuaiExample();

通过liuyanmokuaidao的selectByExample方法查询出所有的留言模块信息 List liuyanmokuaiall = liuyanmokuaidao.selectByExample(example);

将留言模块信息,保存到request中,在页面通过foreach方法进行展示 request.setAttribute("liuyanmokuaiall", liuyanmokuaiall);

返回留言模块管理界面

return "forward:/liuyanmokuaiguanli.action";

修改留言模块模块:

点击修改按钮,可以跳转到留言模块修改页面。在留言模块修改页面中,将初始化该留言模块的所有信息,并将信息一一对应填充到对应编辑栏中。编辑完留言模块信息后,页面通过post方法将数据封装为一个留言模块实体,传入到liuyanmokuaiController中。在xiugailiuyanmokuai中进行接收,接收完毕后,调用liuyanmokuaiMapper中的updateByPrimaryKeySelective方法进行修改。该部分代码如下:

通过liuyanmokuaidao的修改方法根据id修改对应的留言模块 liuyanmokuaidao.updateByPrimaryKeySelective(liuyanmokuai);

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

返回留言模块管理界面

return "forward:/liuyanmokuaiguanli.action";

删除留言模块模块:

在页面中通过a标签,shanchuliuyanmokuai?id=将id传入到后台中,通过shanchuliuyanmokuai接收留言模块id。使用deleteByid的方法

删除该留言模块,完成删除操作。定义删除成功提示信息,删除留言模块成功,并保存到request中,该部分代码如下:

通过liuyanmokuaidao的删除方法根据id删除对应的留言模块 liuyanmokuaidao.deleteByPrimaryKey(id);

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

返回留言模块管理界面

return "forward:/liuyanmokuaiguanli.action";

猜你喜欢

转载自www.cnblogs.com/mlxbc/p/11599469.html