《新闻发布系统》详细设计说明书
1.前言
本说明书在总体设计基础之上,对新闻发布系统各个功能模块进行设计及说明,为系统开发以及维护人员提供了详尽的说明,包括整个系统的设架构、采用的技术、各个功能模块对应的文件的用途,代码的一般性说明等等。有利于开发人员对系统的修改,以及后期维护。
2.系统流程图
开 始 新闻系统首页 管理员登陆 登陆信息维护 普通用户 注册用户登陆 新闻发布 新闻管理 类别管理 评论管理 注册 新闻查看 新闻搜索 评论 图1:系统流程图
退 出 《新闻发布系统》详细设计说明书
3.系统包结构设计及关系
本系统遵循当前主流的软件设计模式:MVC模式。M:模型层;V:视图层;C:控制器层;
视图层有jsp来担任,控制器层由Strtus2的核心控制器来担任。下面
是
本
系
统
的
包
结
构
以
及
关
系
图
:
Com.news.DB DBconnection(数据库链接接口) 继承并实现 Com.news.DB.DBImple DBconnectionImple(数据可链接接口实现类) 依赖注入 Com.news.model.Bean UserBean;AdminBean NewsInfoBean;NewsClassBean;SearchBean;CommentsBean;实体类 导入 Com.news.model.DAOImple UserDAOImple;AdminDAOImple; NewsInfoDAOImple;NewsClassDAOImple;CommentsDAOImple;数据库操作接口实现类 依赖注入 Com.news.controll.action 依赖注入 导入 Com.news.model.DAO UserDAO;AdminDAO;NewsInfoDAO;NewsClassDAO;CommentsDAO;数据库操作接口 继承并实现 Com.news.model.Service UserService;AdminService; NewsInfoService;NewsClassService;CommentsService;业务操作层接口 继承并实现 Com.news.model.ServiceImple UserService;AdminServiceImple; NewsInfoServiceImple;NewsClassServiceImple;CommentsServiceImple;业务操作层接口实现类 UserAction;AdminAction; NewsInfoAction;NewsClassAction;CommentsAction;控制器层
图2:包结构以及关系图
《新闻发布系统》详细设计说明书
4.系统功能模块设计及说明
4.1新闻类别管理模块
4.1.1模块描述
该模块实现对新闻类别进行维护。
4.1.2功能
该模块功能包括对新闻类别信息的添加,删除,修改,查询。
删除功能使用的是标记删除,防止删除的误操作。
4.1.3性能
该模块的功能系统响应时间控制在1-3s以内。操作成功以后
给用户已友好的提示,操作失败要以友好的方式给用户提示出操作失败的原因。
4.1.4输入项
添加操作:给业务层传递NewsClassBean实体; 删除:给业务层传递类别ID;
修改:给业务层传递NewsClassBean实体;
4.1.5输出项
输出操作成功信息或操作失败信息。
4.1.6算法(伪代码)
添加操作:
Public Boolean addNewclass(newclassBean bean){ String sql = “insert into NewClassinfo values(?,?,?)”; 《新闻发布系统》详细设计说明书
If sql执行成功 返回true else 返回false }
删除操作(修改删除标记字段信息):
Public Boolean deleteClass(int id){ String sql = “update NewClassinfo set deletetip=’yes’ where id=?”; If sql 执行成功 返回true Else 返回false }
修改操作:
Public Boolean updatenewClassinfo(newclassBean bean){ String sql = “update NewClassinfo set classname=? Where id=?; If sql 执行成功 Return true; Else Retrun false; } 4.1.7;类设计
《新闻发布系统》详细设计说明书
NewCLassDAOImple Public boolean addNewsclass();添加类别信息 public boolean deleteNewsclass();删除信息 Public boolean updateNewsclass();修改信息 Public List 4.1.8测试计划 见测试计划; 4.2 新闻信息管理模块 4.2.1模块描述 该模块实现对新闻基本信息进行维护。 4.2.2功能 该模块功能包括对新闻基本信息的添加,删除,修改,查询。 4.2.3性能 该模块的功能系统响应时间控制在1-3s以内。操作成功以后 给用户已友好的提示,操作失败要以友好的方式给用户提示出操作失败的原因。 4.2.4输入项 添加操作:给业务层传递NewsInfoBean实体; 删除:给业务层传递类别ID; 修改:给业务层传递NewsInfoBean实体; 4.2.5输出项 输出操作成功信息或操作失败信息。 《新闻发布系统》详细设计说明书 4.2.6算法(伪代码) 添加操作: Public Boolean addNewsinfo(newsBean bean){ String sql = “insert into NewInfo values(?,?,?,?,?,?,?,?)”; If sql执行成功 返回true else 返回false } 删除操作: Public Boolean deleteNews(int id){ String sql = “delete from Newinfo where id=?”; If sql 执行成功 返回true Else 返回false } String 修改操作: sql = “update NewInfo sert Public Boolean updateNewsinfo(newsBean bean){ title=?,info=?,classId=?,keyword=?,deletetip=? Where id=?”; If sql 执行成功 Return true; Else Retrun false; 《新闻发布系统》详细设计说明书 } 4.2.7;类设计 NewInfoDAOImple Public boolean addNewsinfo ();发布新闻信息 public boolean deleteNewsinfo();删除新闻信息 Public boolean updateNewsinfo();修改新闻信息 Public List 4.2.8测试计划 见测试计划; 4.3管理员信息管理模块 4.3.1模块描述 该模块实现对系统管理员信息的维护。 4.3.2功能 该模块功能包括对管理员信息的添加,删除,修改,查询。 4.3.3性能 该模块的功能系统响应时间控制在1-3s以内。操作成功以后 给用户已友好的提示,操作失败要以友好的方式给用户提示出操作失败的原因。 4.3.4输入项 添加操作:给业务层传递AdminBean实体; 《新闻发布系统》详细设计说明书 删除:给业务层传递类别ID; 修改:给业务层传递AdminBean实体; 4.3.5输出项 输出操作成功信息或操作失败信息。 4.3.6算法(伪代码) 添加操作: Public Boolean addAdmininfo(AdminBean bean){ String sql = “insert into admininfo values(?,?,?)”; If sql执行成功 返回true else 返回false } 删除操作(标记删除): Public Boolean updateAdmin(AdminBean bean){ String sql = “update Admininfo set deletetip=’yes’ where id=?”; If sql 执行成功 返回true Else 返回false } 修改操作: Public Boolean deleteAdmin(int id){ String sql = “update admininfo set username=?,password=? Where id=?”; 《新闻发布系统》详细设计说明书 If sql 执行成功 Return true; Else Retrun false; } 4.3.7;类设计 AdminDAOImple Public boolean addAdmininfo ();添加管理员信息 public boolean deleteAdmininfo();删除管理员信息 Public boolean updateAdmininfo();修改管理员信息 Public List 4.3.8测试计划 见测试计划; 4.4注册会员信息维护模块 4.4.1模块描述 该模块实现对系统的注册会员信息的管理。 4.4.2功能 功能包括:对非法注册的会员进行冻结;对已经冻结的注 册会员进行解冻; 4.4.3性能 该模块的功能操作的系统响应时间控制在1-3s以内。操作成 功以后给用户一个友好界面的提示,操作失败要以友好的方式给用户 《新闻发布系统》详细设计说明书 提示出操作失败的原因。 4.4.4输入项 冻结用户功能:为业务层对应的方法传递会员编号的参数; 解冻注册会员功能:为业务层对应的方法传递已经冻结的会员 的编号作为参数; 4.4.5输出项 操作以后的成功信息或者失败信息; 4.4.6算法(伪代码) 冻结注册会员功能: Public Boolean updateAdmininfo_dj(AdminBean bean){ 获取数据库连接connection; String sql = “update userinfo set deletetip=? where id=?”; If sql执行成功 返回true else 返回false } 解冻注册会员功能: Public Boolean updateAdmininfo_jd(AdminBean bean){ 获取数据库连接connection ; String sql = “update userinfo set deletetip=? where id=?”; If sql 执行成功 返回true Else 《新闻发布系统》详细设计说明书 返回false } 4.4.7;类设计 UserDAOImple Public Boolean addUserinfo(UserBean bean);用户注册方法 public Boolean updateUserinfo(UserBean bean); 冻结用户信息或解冻用户信息. Public void close();关闭数据库连接 4.4.8测试计划 见测试计划; 4.5新闻评论信息维护模块 4.5.1模块描述 该功能模块实现对会员的新闻评论进行管理。可以对非法 的评论信息的删除。 4.5.2功能 功能包括:对非法评论信息的删除;查看新闻评论; 4.5.3性能 该模块的功能操作的系统响应时间控制在1-3s以内。操作成 功以后给用户一个友好界面的提示,操作失败要以友好的方式给用户提示出操作失败的原因。 4.5.4输入项 《新闻发布系统》详细设计说明书 查看新闻评论:为业务层相应的方法传递新闻ID; 删除非法新闻评论:为业务层相应方法传递新闻评论ID; 4.5.5输出项 删除新闻评论信息时输出操作是否成功的提示信息; 查看新闻评论信息:为用户显示出对应信息的评论信息; 4.5.6算法(伪代码) 删除非法新闻评论信息 Public Boolean deleteComments(int id){ 获取数据库连接connection; String sql = “delete from Commentsinfo where id=?”; 加载sql语句;给占位符传递参数; If sql 执行成功 Return true; Else Return false; } 查看新闻评论信息: Public List Return List; } 4.5.7;类设计 CommentsDAOImple Public boolean deleteComments(int id);删除新闻评论信息 Public List 4.5.8测试计划 见测试计划; 4.6会员模块 4.6.1模块描述 该模块实现浏览者可以浏览新闻信息,注册会员,注册会 员登陆,注册会员对新闻进行评论等功能;在用户注册的时候要对其注册用户名进行验证,保证其用户名在数据库中式唯一的,此处使用的技术是Ajax技术,实现了动态与数据库连接,避免了页面刷新的麻烦。其他的注册字段要对其进行页面验证,使用JavaScript技术;登陆的时候要使用验证码进行验证,避免暴力破解密码。 4.6.2功能 功能包括:浏览者注册会员;注册会员登陆;注册会员对 新闻信息发表评论;浏览新闻信息; 《新闻发布系统》详细设计说明书 4.6.3性能 该模块的功能操作的系统响应时间控制在1-3s以内。操作成 功以后给用户一个友好界面的提示,操作失败要以友好的方式给用户提示出操作失败的原因。用户注册时候要对注册信息进行验证,对非法信息要阻止其注册;注册会员登陆之后,要在页面显示其登陆信息,并且可以修改其信息。 4.6.4输入项 浏览者注册会员:用户名(必须),密码(必须),重复密码(必须), 性别,真是姓名(必须),出生日期,籍贯,爱好,Email(必须); 登陆:用户名,密码,验证码; 发表评论:输入评论信息; 浏览信息:输入新闻信息的编号; 4.6.5输出项 注册会员功能输出注册是否成功信息;登录功能:登陆成功进 入系统主界面,并显示登录用户的信息,否则重新登录;发表评论:评论发布成功之后,在界面上显示所发布的信息;浏览新闻:输出浏览这所浏览的新闻的详细信息(包括新闻标题,新闻内容,发布时间,点击率以及其评论信息); 4.6.6算法(伪代码) 注册会员: Public Boolean registUser(UserBean bean){ 定义sql语句:String sql = “insert into userinfo(字段信息) values(?,?,?,?,?,?)”; 《新闻发布系统》详细设计说明书 获取数据库连接connection; 加载sql语句; 为占位符赋予相应的字段值; If sql 执行成功 Retrun false; Else Return true; } 注册会员登录: Public UserBean login(UserBean bean){ String sql = “select * from userinfo where username=? And password = ?”; 获取数据库连接connection; 加载sql 语句; 为相应的sql占位符赋值; If sql执行成功 Return user; Else Return user; } 发表新闻评论: Public Boolean addComments(CommentsBean bean){ String sql = “insert into commentsinfo() values(?,?,?,?)”: 获取数据库连接connection; 《新闻发布系统》详细设计说明书 加载sql语句; 为sql占位符赋值; If sql 执行成功 Return true; Else Return false; } 浏览新闻信息 Public NewinfoBean getNewsByid(int nid){ String sql = “select * from newsinfo where id=?”; 获取数据库连接信息connection; 加载sql语句; 为sql占位符赋值; 执行sql语句 将查询得到的信息封装到NewinfoBean中 返回 newinfoBean; } 4.6.7;类设计 《新闻发布系统》详细设计说明书 NewinfoDAO Public Newsinfo getNewsinfoByid(int nid); Public UserBean login(UserBean bean);用户登录; Public Boolean regist(userBean bean);注册用户; Public Boolean addComments(CommentsBean bean);添加评论信息 Public void close();关闭数据库连接 4.6.8测试计划 见测试计划; 4.7新闻搜索模块 4.7.1模块描述 该模块失信对新闻信息的搜索功能;用户通过选择搜索方 式,填入搜索关键字,既可以实现新闻搜索,并将新闻详细信息显示用户; 4.7.2功能 搜索功能包括:按照标题进行模糊搜索;按照新闻关键字进 行模糊搜索; 4.7.3性能 该模块的功能系统响应时间控制在1-3s以内。搜索成功以后 将新闻信息显示到页面上,如果没有用户搜索的信息则用友好的方式显示给用户; 4.7.4输入项 新闻搜索:搜索方式 搜索内容; 4.7.5输出项 《新闻发布系统》详细设计说明书 搜索出来的新闻详细信息; 4.7.6算法(伪代码) 搜索操作: Public List 4.7.7;类设计 NewinfoDAOImple Public List 4.7.8测试计划 见测试计划; 5.系统用户界面设计 系统首页设计: 《新闻发布系统》详细设计说明书 新闻搜索功能 网站导航 新闻标题 任何人都可以进入本网站,在首页点击相应的新闻标题进行浏览新闻信息,也可应通过导航来分类浏览新闻信息。 新闻详情界面: 新闻标题 发布日期以及来源 新闻详情 关键字、点击率、类别 查看新闻评论 《新闻发布系统》详细设计说明书 浏览评论与发表评论界面: 已有的评论 发表评论 提交 任何浏览者都将可以进入本界面查看新闻评论,但是只有注册用户且登录以后才能发表新的评论。 后台登录界面: 管理员输入用户名,密码进入管理界面 管理员输入后台系统URL以后,进入登录界面,输入用户名以及密码之后进入管理界面。 《新闻发布系统》详细设计说明书 新闻添加界面: 输入发布新闻信息 点击提交即可发布新闻 新闻添加界面,用户输入新闻的信息之后,要对信息进行合法性验证,然后点击提交即可发布一天新闻信息。 因篇幅问题不能全部显示,请点此查看更多更全内容