项目编号:BS-PT-001
SSH论坛系统设计文档说明书
1.引言
1.1 目的
读者范围:项目经理、组织人员、设计人员、开发人员、测试人员。
本文档作为酒店管理系统的概要说明文档,主要在于明确数据结构和软件结构,此外总体设计还将给出内部软件和外部软件部件之间的接口定义,各个软件模块的功能说明,数据结构的明细以及具体的装配要求。
1.2 背景
论坛系统是一种B/S架构的在线交流平台系统。实现用户在线根据不同的兴趣在不同的版块进行交流沟通。本项目基于Spring+Struts2+Hibernate框架来进行实现,前端使用框架BootStrap实现,数据库使用MySql5.5。
1.3 定义
1.3.1 JSP
JSP(Java Server Pages)技术使用Java编程语言编写类XML的tags和Scriptlets,来封装产生动态网页的处理逻辑。网页还能通过tags和scriptlets访问存在于服务器端的资源的应用逻辑。JSP将网页逻辑与网页设计和显示分离,支持可重用的基于组件的设计,使基于Web的应用程序的开发变得迅速和容易。
1.3.2 Struts2
Struts2是一个基于MVC设计模式的Web应用框架,它本质上相当于一个servlet,在MVC设计模式中,Struts2作为控制器(Controller)来建立模型与视图的数据交互。Struts 2是Struts的下一代产品,是在 struts 1和WebWork的技术基础上进行了合并的全新的Struts 2框架。其全新的Struts 2的体系结构与Struts 1的体系结构差别巨大。Struts 2以WebWork为核心,采用拦截器的机制来处理用户的请求,这样的设计也使得业务逻辑控制器能够与ServletAPI完全脱离开,所以Struts 2可以理解为WebWork的更新产品。虽然从Struts 1到Struts 2有着太大的变化,但是相对于WebWork,Struts 2的变化很小。
1.3.3 MySql
MySql是一款高性能的关系性数据库,目前使用非常流行,其灵活的SQL语句具有非常强大的查询功能。
1.3.4 Hibernate
Hibernate是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,它将POJO与数据库表建立映射关系,是一个全自动的orm框架,hibernate可以自动生成SQL语句,自动执行,使得Java程序员可以随心所欲的使用对象编程思维来操纵数据库。 Hibernate可以应用在任何使用JDBC的场合,既可以在Java的客户端程序使用,也可以在Servlet/JSP的Web应用中使用,最具革命意义的是,Hibernate可以在应用EJB的JaveEE架构中取代CMP,完成数据持久化的重任。
1.3.5 Bootstrap
Bootstrap是Twitter推出的一个开源的用于前端开发的工具包。是一个Web前端CSS框架。Bootstrap是基于jQuery框架开发的,它在jQuery框架的基础上进行了更为个性化和人性化的完善,形成一套自己独有的网站风格,并兼容大部分jQuery插件。酒店管理系统采用这个框架做前端开发,实现响应式设计。
1.4 参考资料
- 《J2EE 项目实训UML及设计模式》 杨少波 等编著 清华大学出版社 2008年5月
- 《J2EE 项目实训Spring框架技术》 杨少波 等编著 清华大学出版社 2008年5月
2.总体设计
2.1 需求规定
本系统基于SSH的论坛BBS系统,包含游客,会员,管理员三个角色:游客可以浏览相关贴子;会员可以发贴,申请精华贴;管理员可以创建板块,管理板块,管理贴子,对用户禁言操作等,审批精华贴,发布公告。
2.2 运行环境
2.2.1 硬件环境
服务器端:处理器型号以及内存容量:1G以上,外存容量硬盘40G以上,考虑到数据的安全性,要求使用磁盘阵列,广域网网络环境。
客户端:PⅢ或更高配置。
2.2.2 软件环境
服务器端:Windows/CentOS 6.4,MySQL数据库5.0,tomcat8.0
客户端: IE9.0以上,Firefox,Chrome,Opera
2.3系统架构设计和业务处理流程
根据需求文档中描述的功能、非功能性需求进行分析,以及对现有的主流技术框架的研究,本系统采用Spring+Struts2(JSP) + Hibernate +BootStrap + mysql技术框架,实现MVC架构模式,保证了系统良好的可扩展性、可维护性和模块的复用性。
Struts2 具有是一个比较流行的MVC框架,在MVC架构层中进行简单配置即可完成于spring无缝融合,达到Spring提出的高效集成和松耦合的架构目标所以在系统需求下,本论坛采用Struts2作为MVC的架构进行系统实现。
在ORM中,目前成熟的有很多种,基于系统性能和扩展性方面考虑,SL商城采用Hibernate框架实现ORM,Hibernate对CRUD进行了大量的封装,让持久层开发更简单。
论坛管理系统的总体技术架构图如图1所示:在表示层(View)采用了JSP页面进行展示;在效果以及渲染方面,采用Bootstrap框架做前端开发;Spring的事务控制以及控制反转贯穿MVC三层,发挥着无缝连接的作用。在持久层,有Spring对Hibernate的支持以及Hibernate的数据持久化功能;数据库采用mysql数据库。
图2.3.1 系统总体架构图
2.3系统功能结构设计
包含游客,会员,管理员三个角色:游客可以浏览相关贴子;会员可以发贴,申请精华贴;管理员可以创建板块,管理板块,管理贴子,对用户禁言操作等,审批精华贴,发布公告。
2.5尚未解决的问题
无
3数据结构设计
各个数据表结构及说明:略
4.系统异常处理设
4.1出错信息
采用一览表的方式说明每种可能的出错或故障情况出现时,系统输出信息的形式、含义及处理方法。出错信息采用统一的表现方式,用一个统一的窗口表现给用户,有权限的用户可以看到出错信息的提示。对于数据维护中数据导入或导出出现的错误信息,系统需要给予文档说明,将错误信息的详细描述告诉用户,以便于数据的修改。
4.2补救措施
系统出错后的处理的补救:
1、数据库恢复。
2、系统日志恢复和跟踪。
5.功能模块设计
5.1 前端页面
5.1.1 界面设计
注册:
登陆:
查看贴子:
5.2后台管理
5.2.1 公告管理
5.2.1.1 界面设计
发布公告
5.2.2 个人设置
5.2.2.1 界面设计
5.2.3 贴子管理
5.2.3.1 界面设计
5.2.4 精华贴管理
5.2.4.1 界面设计
5.2.5 用户封锁管理
5.2.5.1 界面设计
5.2.6 添加板块管理
5.2.6.1 界面设计
5.2.7板块管理
5.2.7.1 界面设计