每天记录学习,每天会有好心情。*^_^*
今日思考,完成一个博客网站建设的实现与开发项目,需要实现哪些功能?
此类项目常见描述如下:
博客,是使用特定的软件,在网络上出版、发表和张贴个人文章的人,或者是一种通常由个人管理、不定期张贴新的文章的网站。采用当前非常流行的B/S体系结构,以JSP作为开发技术,主要依赖SSM技术框架,实现对博客信息的高质管理。
SSM(MYECLIPSE)框架及其适合博客网站建设的实现与开发,使用MVC的思想可以极大程度减少重复工作量。和SSM(MYECLIPSE)框架最配的开发工具是MYECLIPSE。MYECLIPSE集成了大量插件,可以更好的使用SSM(MYECLIPSE)进行项目的开发,使得项目开发时事半功倍。
通过对博客网站建设的实现与开发系统的仔细分析,可以得出博客网站建设的实现与开发系统是一个 后台项目。
在这样一个项目中,系统的登录角色是必不可少的,对每个登录角色设置账号、密码。以确保系统可以正常登录使用。SSM(MYECLIPSE)项目中包含的登录角色有管理员、用户。
系统中用户之间存在关联关系,我们将其关联关系保存在博客表中。他们的关联关系是这样的博客的作者与用户的mingzi字段对应、博客的作者id与用户的id字段对应
。为了完成系统的功能需要为博客、用户设置评论表,记录评论信息。在评论表中定义了两者的关联关系,其中评论的博客与博客的biaoti字段对应、评论的博客id与博客的id字段对应、评论的用户与用户的mingzi字段对应、评论的用户id与用户的id字段对应。
总结得出博客网站建设的实现与开发项目所有数据为:管理员(admin)、用户(yonghu)、博客(boke)、评论(pingllun)
博客网站建设的实现与开发之管理员表
字段名 | 类型 | 属性 | 描述 id | INT(11) | PRIMARY KEY | 管理员id username | VARCHAR(255) | | 账号 password | VARCHAR(255) | | 密码 quanxian | VARCHAR(255) | | 权限
博客网站建设的实现与开发之用户表
字段名 | 类型 | 属性 | 描述 id | INT(11) | PRIMARY KEY | 用户id mingzi | VARCHAR(255) | | 名字 username | VARCHAR(255) | | 账号 password | VARCHAR(255) | | 密码 xingbie | VARCHAR(255) | | 性别 nianling | VARCHAR(255) | | 年龄 jianjie | VARCHAR(255) | | 简介
博客网站建设的实现与开发之博客表
字段名 | 类型 | 属性 | 描述 id | INT(11) | PRIMARY KEY | 博客id biaoti | VARCHAR(255) | | 标题 zuozhe | VARCHAR(255) | | 作者 zuozheid | VARCHAR(255) | | 作者id neirong | VARCHAR(255) | | 内容 fabushijian | VARCHAR(255) | | 发布时间
博客网站建设的实现与开发之评论表
字段名 | 类型 | 属性 | 描述 id | INT(11) | PRIMARY KEY | 评论id boke | VARCHAR(255) | | 博客 bokeid | VARCHAR(255) | | 博客id yonghu | VARCHAR(255) | | 用户 yonghuid | VARCHAR(255) | | 用户id neirong | VARCHAR(255) | | 内容
SET FOREIGN_KEY_CHECKS=0; -- ---------------------------- -- ---------------------------- -- Table structure for ggbokewangzhan -- ---------------------------- 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_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 ‘密码‘,`xingbie` VARCHAR(255) DEFAULT NULL COMMENT ‘性别‘,`nianling` VARCHAR(255) DEFAULT NULL COMMENT ‘年龄‘,`jianjie` VARCHAR(5000) DEFAULT NULL COMMENT ‘简介‘,PRIMARY KEY (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COMMENT=‘用户‘; -- ---------------------------- DROP TABLE IF EXISTS `t_boke`; CREATE TABLE `t_boke` (`id` INT(11) NOT NULL AUTO_INCREMENT COMMENT ‘博客id‘,`biaoti` VARCHAR(255) DEFAULT NULL COMMENT ‘标题‘,`zuozhe` VARCHAR(255) DEFAULT NULL COMMENT ‘作者‘,`zuozheid` INT(11) DEFAULT NULL COMMENT ‘作者id‘,`neirong` VARCHAR(5000) DEFAULT NULL COMMENT ‘内容‘,`fabushijian` VARCHAR(255) DEFAULT NULL COMMENT ‘发布时间‘,PRIMARY KEY (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COMMENT=‘博客‘; -- ---------------------------- DROP TABLE IF EXISTS `t_pingllun`; CREATE TABLE `t_pingllun` (`id` INT(11) NOT NULL AUTO_INCREMENT COMMENT ‘评论id‘,`boke` VARCHAR(255) DEFAULT NULL COMMENT ‘博客‘,`bokeid` INT(11) DEFAULT NULL COMMENT ‘博客id‘,`yonghu` VARCHAR(255) DEFAULT NULL COMMENT ‘用户‘,`yonghuid` INT(11) DEFAULT NULL COMMENT ‘用户id‘,`neirong` VARCHAR(5000) DEFAULT NULL COMMENT ‘内容‘,PRIMARY KEY (`id`) ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COMMENT=‘评论‘;
添加博客模块:
从页面中通过post方法,将博客信息传入到后台服务器中,在tianjiabokeact
中接收,字段包括标题,作者,作者id,内容,发布时间使用insert方法添加数据,将数据同步到
数据库中,完成添加操作。定义添加成功提示信息,添加博客成功,并保存到request中具体代码如下:
通过bokedao的insert方法将页面传输的博客添加到数据库中 bokedao.insert(boke);
将添加博客成功信息,保存到request的message中,在页面中给出用户提示 request.setAttribute("message", "添加博客成功");
返回博客管理界面
return "forward:/tianjiaboke.action";
查询博客模块:
博客的查询模块实现方式为,在页面中发起bokeguanli.action请求。通过该请求,响应服务器bokeController类中的bokeguanli,在该方法中通过selectByexample进行数据的查询操作。将所有的博客信息查询后,保存到request中的bokeall中,在页面中进行展示,返回bokeguanli.jsp,该部分核心代码如下所示:
生成博客样例类,通过example定义查询条件 BokeExample example = new BokeExample();
通过bokedao的selectByExample方法查询出所有的博客信息 List bokeall = bokedao.selectByExample(example);
将博客信息,保存到request中,在页面通过foreach方法进行展示 request.setAttribute("bokeall", bokeall);
返回博客管理界面
return "forward:/bokeguanli.action";
修改博客模块:
在页面填写完修改信息后,点击修改按钮,将数据提交到xiugaiboke中,封装为一个博客
,使用update方法修改该博客信息,将数据同步到数据库,完成修改操作。
定义修改成功提示信息,修改博客成功,并保存到request中具体代码如下:
通过bokedao的修改方法根据id修改对应的博客 bokedao.updateByPrimaryKeySelective(boke);
将修改博客成功信息,保存到request的message中,在页面中给出用户提示 request.setAttribute("message", "修改博客信息成功");
返回博客管理界面
return "forward:/bokeguanli.action";
删除博客模块:
在管理页面中,点击删除。页面将通过a标签的href属性,使用get方法将该博客
的id上传到服务器中,在服务器中通过bokeController类中的shanchuboke进行接收,之后调用bokeMapper中的deleteByPrimaryKey方法根据ID进行删除。将删除信息保存到request的message中,在页面给出用户删除成功的提示信息,该部分核心代码如下:
通过bokedao的删除方法根据id删除对应的博客 bokedao.deleteByPrimaryKey(id);
将删除博客成功信息,保存到request的message中,在页面中给出用户提示 request.setAttribute("message", "删除博客成功");
返回博客管理界面
return "forward:/bokeguanli.action";
原文地址:https://www.cnblogs.com/lsjyy/p/11613938.html