每天记录学习,每天会有好心情。*^_^*
在学习动态网站设计与制作项目的时候,方便日后能及时查阅,在本平台中记录一下该项目的开发流程。在学习时候的选用了SSM(MYECLIPSE),这个框架不论是学习还是使用都非常方便,简单易上手。是我们学习编程可以重点学习的一个框架,我在开发动态网站设计与制作项目的时候选用了MYECLIPSE来搭建SSM(MYECLIPSE)框架,最终将动态网站设计与制作项目开发为了一个 后台项目。
该项目具有的用户角色包括了用户,每个角色都含有自己的登录账号和密码。
系统中用户之间存在关联关系,我们将其关联关系保存在留言表中。他们的关联关系是这样的留言的用户与用户的mingzi字段对应、留言的用户id与用户的id字段对应。
总结得出该系统所有数据为:管理员(admin)、文章(wenzhang)、留言(liuyan)、用户(yonghu)
管理员表
字段名 | 类型 | 属性 | 描述 id | INT(11) | PRIMARY KEY | 管理员id username | VARCHAR(255) | | 账号 password | VARCHAR(255) | | 密码
文章表
字段名 | 类型 | 属性 | 描述 id | INT(11) | PRIMARY KEY | 文章id biaoti | VARCHAR(255) | | 标题 neirong | VARCHAR(255) | | 内容 fabushijian | VARCHAR(255) | | 发布时间
留言表
字段名 | 类型 | 属性 | 描述 id | INT(11) | PRIMARY KEY | 留言id neirong | VARCHAR(255) | | 内容 liuyanshijian | VARCHAR(255) | | 留言时间 yonghu | VARCHAR(255) | | 用户 yonghuid | VARCHAR(255) | | 用户id
用户表
字段名 | 类型 | 属性 | 描述 id | INT(11) | PRIMARY KEY | 用户id mingzi | VARCHAR(255) | | 名字 username | VARCHAR(255) | | 账号 password | VARCHAR(255) | | 密码
SET FOREIGN_KEY_CHECKS=0; -- ---------------------------- -- ---------------------------- -- Table structure for ggdongtaisheji -- ---------------------------- 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_wenzhang`; CREATE TABLE `t_wenzhang` (`id` INT(11) NOT NULL AUTO_INCREMENT COMMENT '文章id',`biaoti` VARCHAR(255) DEFAULT NULL COMMENT '标题',`neirong` VARCHAR(255) DEFAULT NULL COMMENT '内容',`fabushijian` VARCHAR(255) DEFAULT NULL COMMENT '发布时间',PRIMARY KEY (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COMMENT='文章'; -- ---------------------------- DROP TABLE IF EXISTS `t_liuyan`; CREATE TABLE `t_liuyan` (`id` INT(11) NOT NULL AUTO_INCREMENT COMMENT '留言id',`neirong` VARCHAR(255) DEFAULT NULL COMMENT '内容',`liuyanshijian` VARCHAR(255) DEFAULT NULL COMMENT '留言时间',`yonghu` VARCHAR(255) DEFAULT NULL COMMENT '用户',`yonghuid` INT(11) DEFAULT NULL COMMENT '用户id',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',`mingzi` 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='用户';
添加文章模块:
系统中存在添加文章功能,通过点击添加文章可以跳转到该功能模块,在该功能模块中,填写对应的文章信息。文章包含信息标题,内容,发布时间,填写完所有信息后,通过post方法将数据提交到tianjiawenzhang.action中,该地址将在服务器中wenzhangController类中的tianjiawenzhangact方法中进行响应。响应结果为,获取所有的文章信息,封装一个wenzhang类,使用wenzhangController类中定义的wenzhangdao的insert方法,将文章数据插入到数据库的wenzhang表中。并给出用户提示信息,添加文章成功,将该信息保存到request的message中,该信息将在页面中进行展示。该部分核心代码如下:
通过wenzhangdao的insert方法将页面传输的文章添加到数据库中 wenzhangdao.insert(wenzhang);
将添加文章成功信息,保存到request的message中,在页面中给出用户提示 request.setAttribute("message", "添加文章成功");
返回文章管理界面
return "forward:/tianjiawenzhang.action";
查询文章模块:
在浏览器中进入文章查询页面时,此时浏览器的地址栏为wenzhangguanli.action,该地址将响应wenzhangController类中的wenzhangguanli,在该方法中,通过selectByexample方法获取所有的文章信息,并将该信息保存到request中,在页面进行循环展示。该部分核心代码如下:
生成文章样例类,通过example定义查询条件 WenzhangExample example = new WenzhangExample();
通过wenzhangdao的selectByExample方法查询出所有的文章信息 List wenzhangall = wenzhangdao.selectByExample(example);
将文章信息,保存到request中,在页面通过foreach方法进行展示 request.setAttribute("wenzhangall", wenzhangall);
返回文章管理界面
return "forward:/wenzhangguanli.action";
修改文章模块:
点击修改按钮,可以跳转到文章修改页面。在文章修改页面中,将初始化该文章的所有信息,并将信息一一对应填充到对应编辑栏中。编辑完文章信息后,页面通过post方法将数据封装为一个文章实体,传入到wenzhangController中。在xiugaiwenzhang中进行接收,接收完毕后,调用wenzhangMapper中的updateByPrimaryKeySelective方法进行修改。该部分代码如下:
通过wenzhangdao的修改方法根据id修改对应的文章 wenzhangdao.updateByPrimaryKeySelective(wenzhang);
将修改文章成功信息,保存到request的message中,在页面中给出用户提示 request.setAttribute("message", "修改文章信息成功");
返回文章管理界面
return "forward:/wenzhangguanli.action";
删除文章模块:
在页面中通过a标签,shanchuwenzhang?id=将id传入到后台中,通过shanchuwenzhang接收文章id。使用deleteByid的方法
删除该文章,完成删除操作。定义删除成功提示信息,删除文章成功,并保存到request中,该部分代码如下:
通过wenzhangdao的删除方法根据id删除对应的文章 wenzhangdao.deleteByPrimaryKey(id);
将删除文章成功信息,保存到request的message中,在页面中给出用户提示 request.setAttribute("message", "删除文章成功");
返回文章管理界面
return "forward:/wenzhangguanli.action";