




免费预览已结束,剩余60页可下载查看
下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
本 科 毕 业 论 文基于Freemarker技术的BBS系统的设计与实现The Design and Implementation of Bulletin Board System Based on Freemarker姓 名:学 号:学 院:软件学院系:软件工程专 业:软件工程年 级:指导教师: 年 月摘要当今的社会是一个信息化的社会,数据的共享和信息的快速阅读是当今社会的发展趋势,作为电子公告板形式的BBS已经面世了30多个年头,在这30多个年头里面BBS有着不断的发展,但是当前BBS发展的一个共同的瓶颈就是访问速度的问题,很多的BBS系统都是基于PHP技术来实现的,对于用户的访问速度有一定的延迟。根据查询相关资料显示,在网络访问中静态页面是访问速度最快的,网络中对于静态页面的传输最快主要是不用进行相关动态信息的解析直接传递静态页面的信息流,这样就可以节省了相关解析所需的时间。本文主要研究的就是基于网络上能够高速访问的BBS系统,也就是基于静态页面技术的BBS系统。当前信息的交流主要是以时间为基准,信息之间的传递越快,有效性就越强,本文研究的就是基于快速访问的实现,这就是本文为什么使用Freemarker技术的原因。 本文研究的是网上论坛系统(BBS系统),该BBS系统是纽新项目里面的一个小功能模块,其中对于BBS的要求设计主要是用来实现公司和用户的沟通的作用,用来实现用户对于产品的关注和对于产品的建议。本系统采用的是浏览器/服务器(B/S)结构,用户工作界面是通过IE浏览器来实现的。设计上采用的是MVC模型,实现模型-视图-控制器的三层结构。主要运用的技术框架是采用Spring+Struts2.0+Hibernate三层框架搭建起来,并且为了响应用户对于速度的需求,决定采用struts和Freemarker这样两个框架来实现表示层信息的展示实现,FreeMarker允许Java Servlet 保持图形设计同应用程序逻辑的分离,这是通过在模板中密封HTML完成的。模板用servlet提供的数据动态地生成HTML,这样使得BBS系统页面自动生成。主要是用来实现信息的及时交流和对于信息的保存功能的实现。当今,BBS是各种信息交流的平台,更是信息更新的平台,对于信息的沟通是BBS的一大功能实现。本文基于Freemarker技术实现的BBS的最大特点是实现其网页信息的快速访问和交流的实现,体现当今社会数据和信息的快速共享,为客户提供快速的服务体验。最后,本文将实现一个由Struts2和Freemarker相结合的静态页面自动生成的能够快速得到访问的BBS系统。关键字:BBS;Freemarker;数据共享 ABSTRACTTodays society is a society, which is full of information technology. Data sharing and information fast reading is the development trend of todays society. As an electronic bulletin board forms of BBS has been around for more than 30 years. BBS is developing in these 30 years all the time. But the current development of BBS has a common bottleneck which is the access speed, a lot of BBS systems are based on PHP technology to achieve, for users access speed of a certain delay. According to inquiries related information, visiting the static page in the network is the fastest access to the network in a static page, for the fastest transmission main reason is not required to carry out direct analysis of dynamic information related to the static page of information flow transfer, so you can save related to the time required for analysis. The study is based on the network to high-speed access to the BBS system, which is technology based on static page BBS systems. The exchange of information is the current time the main basis of information transfer between the faster the stronger the effectiveness, this study is based on the realization of fast access, which is this reason of the use of Freemarker technology.This study is the online Bulletin Board System (BBS), which is a small functional module of the project of Joynew System. Including the requirements for the design of BBS is mainly used to achieve communication between companies and the role of the user, to achieve the user to products of concern and recommendations for the product. This System is based on browser / server structure, users can achieve information through IE browser. And the design of this System bases on MVC model, which is made up of model - view - controller three-tiered structure. The main framework of the use of technology is Spring + Struts2.0 + Hibernate to build up three-frame, and in order to respond to user demands for speed, decided to make the framework of struts and FreeMarker technology to achieve the displaying of level information. FreeMarker allows Java Servlet maintain a graphic design application logic with the separation, which is sealed through the HTML in the template completed. Template provided with the servlet to generate the data dynamically HTML, this makes the BBS system automatically generated page. This way is mainly to be used to achieve the timely exchange of information and information on saving for the realization. Today, BBS is a platform for information exchange; information update is a platform for information communication is a major function of BBS implementation. This study Based on the Freemarker technical, and the greatest features of this is to achieve its website information to achieve fast access and exchange, reflects todays society the rapid sharing of data and information, providing customers with fast service experience. Finally, this study will achieve a combination of Struts2 and Freemarker automatically generated static pages to quickly get access to the BBS system.Key words: BBS; Freemarker; Data Sharing目 录第一章 绪论11.1 研究背景11.1.1 BBS中国的发展11.1.2 BBS现状展望11.1.3 BBS设计背景21.2 研究综述31.3 研究目标3第二章 模型与主要技术介绍52.1 Freemarker技术介绍52.2 SSH技术介绍6第三章 系统总体设计73.1 需求分析73.1.1 系统功能层次模型图73.1.2 系统功能描述83.2 原型设计83.3 数据库设计93.4 系统概要设计103.4.1 系统运行环境103.4.2 系统设计方案103.4.3 系统架构设计图113.4.4 完成相应模块说明123.4.5 完成相应功能模块的类说明133.4.6 接口设计153.5 概要设计说明163.6 详细设计实现163.6.1 系统主要目标163.6.2 整体系统的功能需求173.6.3 功能模块说明213.6.4 接口详细设计233.6.5 相应功能流程图313.6.6 系统整体类图343.6.7 服务器配置373.6.8 Freemarker技术难点介绍393.7 本章小结41第四章 系统测试与运行结果4341 系统测试4342 运行结果434.2.1 自动生成的静态页面444.2.2 帖子管理页面454.3测试用例设计464.4 本章小结47第五章 总结与展望495.1总结495.2项目展望50参 考 文 献51致 谢53ContentCharter One Preface11.1 Research Background11.1.1 Development in China11.1.2 Current Situation of BBS11.1.3 Design Background of BBS21.2 Research Overview31.3 Research Goal3Charter Two Introduction of Model and Main Technology42.1 Introduction of FreeMarker42.2 Introduction of SSH5Charter Three System Total Design 73.1 Requirements73.1.1 Hierarchy Chart of System Funtion73.1.2 Description of System Function 83.2 Prototype Design83.3 DataBase Design93.4 Preliminary Design of System103.4.1 JRE103.4.2 System Proposal Design 103.4.3 System Structure Design113.4.4 Illustrate of Module 123.4.5 Illustrate of Module Function133.4.6 Interface Design153.5 Preliminary Design Introduction 163.6 Detailed Design and Implementation163.6.1 Systems Main Goal 163.6.2 Functional Requirement of System173.6.3 Functional Module Illistration213.6.4 Interface Detailed Design233.6.5 Relative Function Flow Chart313.6.6 Systems Class Diagram343.6.7 Configuration of Service373.6.8 Introduction of Difficult Freemarker393.7 Summary41Charter Four Result and Analyze of Testing434.1 System Testing434.2 Running Result434.2.1 Static HTML Page Genertaed Automatically444.2.2 Manage Post Interface454.3 Test Case Design464.4 Summary47Charter Five Summary and Prospect495.1 Summary of Thesis495.2 Prospect of Project50References51Acknowlegement53第一章 绪论第一章 绪论1.1 研究背景研究背景主要是按照当前BBS在国内的相应发展情况,然后根据其中的出现的主要问题来实现对于整体项目的设计指导。1.1.1 BBS中国的发展大约是从1991年开始,中国开始了第一个BBS站。经过长时间的发展,直到1995年,随着计算机及其外设的大幅降价,BBS才逐渐被人们所认识。1996年更是以惊人的速度发展起来。中国的BBS站,按其性质划分,可以分为2种:一种是商业BBS站,如新华龙讯网;另一种是业余BBS站,如天堂资讯站。由于使用商业BBS站要交纳一笔费用,而商业站所能提供的服务与业余站相比,并没有什么优势,所以其用户数量不多。多数业余BBS站的站长,基于个人关系,每天都互相交换电子邮件,渐渐地形成了一个全国性的电子邮件网络China FidoNet(中国惠多网)。于是,各地的用户都可以通过本地的业余BBS站与远在异地的网友互通信息。这种跨地域电子邮件交流正是商业网站无法与业余网站相抗衡的根本因素。由于业余BBS网站拥有这种优势,所以使用者都更乐意加入。这里“业余”2字,并不是代表这种类型的BBS站的服务和技术水平是业余的,而是指这类BBS站的性质。一般BBS站都是由志愿者开发的。他们付出的不仅是金钱,更多的是精力。其目的是为了推动中国计算机网络的健康发展,提高广大计算机用户的应用水平,这就是国内BBS的相对发展情况。1.1.2 BBS现状展望中国的BBS站,单线站还占大多数。随着计算机的普及,特别是调制解调器的大量使用,BBS的活动将会进一步高涨。但是,随之而来的拨号难和抢线难的问题将会加剧。尽管BBS站台的数量在不断增长,但这种增长的幅度总也赶不上用户群的增长。 许多人同时拨号一个站台,不可避免地发生冲突。每回要拨上几十次乃至上百次才能成功连上一个BBS站的状况已经成为困扰今日中国BBS用户的一个难题。随着BBS活动的深入,中国已经出现了一些多线站,一次可以允许2人以上同时访问。 BBS的发展过程中,也出现了一些问题。由于中国使用的BBS架构软件,都是从国外引进的,因此没有必要的中文说明。虽然一些热心的站长翻译了一些资料,但是仅靠这些是远远不够的。另外,有些站台的设立是相互抄袭,所以在结构上难免有雷同之处。 自从1999年是中国网络的发展年。但是,应该清醒地认识到,一些BBS站并没有走上“简单、易用”这一层次。包括一些厂商架设的BBS站,实用性还需要加强。中国的BBS站将向着个性化和专业化的方向发展。其中对于BBS的整体显示效果图如图1-1所示:图1-1 BBS整体结构效果图1.1.3 BBS设计背景21世纪是电脑的世纪更确切的说是网络的世纪,在这网络高速发达的时代,人们对于网络的需求不单单只是资源,更者是对于速度的追求,提高工作的效率和速度是现今网络发展的一大要素。而对于BBS系统更是要求高速的访问来得到及时的信息,并且对于信息做出及时的反馈的及时系统。而在网络传输中对于静态文件的传输是一个相对比较高速的传输过程,而本文设计的整体系统就是围绕这样的一个观点来进行对于BBS高速访问的设计实现作为理论基础,就是应用FreeMarker技术来实现1。1.2 研究综述基于Freemarker的BBS设计的主要体现当代大学生对于网络技术发展的一些观点和想法,利用学到的知识体现当代大学生对于网络技术快速发展的设计实现,把理论知识转化成具体运用的工具,体现该项目系统的可用性。1.3 研究目标利用Spring+Struts2.0+Hibernate三层框架技术2来实现整体网络论坛的架构设计,采用基于动态和静态相结合的技术来实现整体系统。其中对于前台主要采用了静态页面技术(Freemarker)来实现页面的快速反映,主要的功能点有以下几点: 用户登录(采用权限管理的接口)、发帖、回复帖子、删除帖子在线用户(真、假)、搜索帖子、按指定子分类浏览帖子、增加积分、扣除积分、榜单的生产,帖子审核、帖子的置顶与加精、建立新版、删除版面、人气作假、制定积分规则、按话题显示所有回复、bbs访问情况统计、自动转载。57第二章 模型与主要技术介绍第二章 模型与主要技术介绍模型和主要技术介绍主要是通过对于项目的深入理解,获取相应的模型设计方案和技术框架的设计架构,进一步理解整体项目的模型系统设计。2.1 Freemarker技术介绍使用静态页面技术主要解决访问速度问题,因为静态HTML页面直接访问速度快; 其次静态网页的内容非常稳定,容易被搜索引擎检索,有利于SEO搜索引擎优化; 而且生成的静态页面从理论上讲是没有攻击漏洞的,相对安全; 并且生成的静态页面可以降低服务器承受的能力,无需解析即可返回客户端,保证服务器正常运行;生成的静态页面访问时完全脱离了数据库访问的压力,不存在数据库查询操作;最后设计动态网页生成静态网页是一种趋势;采用Freemarker的工作原理3如图2-1所表示:图2-1 Freemarker工作原理2.2 SSH技术介绍SSH开发框架简介 SSH=Spring+Struts2+Hibernate,是目前J2EE架构下较为流行的一种开发框架,它的主要特点是Struts2进行流程控制4,Spring进行业务流转5,Hibernate进行数据库操作的封装6,这种新的开发模式让系统的开发更加方便、快捷、思路清晰!Hibernate是一种持久层框架7,跟数据库打交道,是通用的,常用的数据库都可以连。整个结构框架如图2-2所示:图2-2 SSH工作原理第三章 系统总体设计第三章 系统总体设计3.1需求分析经过前期的调研和对于用户需求的分析,总结的需求分析设计如下,其中主要体现了用户的最主要需求,对于系统的整体要求实现如下:3.1.1 系统功能层次模型图按照用户的需求,制定的系统功能层次模型图8如图3-1所表示:图3-1 系统功能层次模型图3.1.2 系统功能描述主要陈述了整个BBS系统的功能,对系统功能层次图进行详细的说明。该系统主要分为前台服务系统和后台管理系统两大块。前台服务系统主要是用于满足论坛会员的需求,为他们提供各种论坛功能。后台服务系统,主要是给论坛的管理人员使用的。前台服务系统主要分为:用户注册、登录、帖子服务、榜单生成、个人信息以及在线用户显示六大子功能。后台管理系统主要分为:用户管理、帖子管理、版面管理、访问统计、积分管理以及自动转载这六大子功能。3.2 原型设计根据对于现有需求文档的分析,还有跟用户的不断沟通,以及对于整个BBS系统的深入研究分析,最终提出了原型设计方案,主要按照的是用户对于整体界面的需求分析,以及用户对于整体色彩的方案搭配的满意程度进行原型的开发设计方案确定。原型设计方案的整体设计思想为:合理的划分功能模块视图设计。根据用户对于各个模块的需求确定,然后根据用户相应的习惯来设计模块视图,让用户感觉用起来很舒服,以客户的满意度为基点实现用户满意第一,功能模块划分合理的特点。整体界面风格确定。利用已经有的模板进行相应的修改,并且运用多种选择的方案来设计整体界面风格,让用户有选择的余地,并且根据用户对于界面风格确定做相应修改。浏览器版本的兼容。浏览器版本的兼容是对于用户使用该系统的重要指标,所以应该解决系统对于多个浏览器版本的兼容问题。细节的修改完美。成功往往取决于细节,应做到简约大方,使用舒服,简便操作。3.3 数据库设计经过对于用户需求分析的深入了解,还有原型设计的完成开发,本文依照原型设计和需求分析对于系统的整体的数据库设计,实现系统整体的数据需求,其中数据库设计模型9如图3-2所表示:图3-2 数据库设计模型3.4 系统概要设计系统的概要设计,主要是基于在用户的需求分析上来实现对于其实设计的进一步解析,其中主要对于一些功能进行流程解析和数据流的分析。3.4.1 系统运行环境开发本系统前首先确定系统开发和运行的环境以及框架技术为表3-3所示:表3-3 系统运行环境和框架名称版本操作系统Windows Server XP数据库平台MySQL5.0应用平台Tomcat5.5Java开发工具MyEclipse 6.5运行环境JDK1.6框架Spring+Hibernate+Struts+Freemarker3.4.2 系统设计方案本文主要采用基于B/S架构来实现的,整体系统的部署图如图3-4所表示:图3-4 系统部署图3.4.3 系统架构设计图系统的架构设计主要是运用当前最流行的SSH技术10来实现整体框架的搭建,主要的设计图如图3-5所示:图3-5 系统架构设计图3.4.4 完成相应模块说明该系统中本文主要运用的技术有Freemaker和SSH技术11,其中主要完成的模块有如下几个功能实现:一级帖子榜单的生成。一级榜单的生成主要是基于版面和版面分类表来实现的,其中对于一级榜单的生成主要采用的是Freemaker技术12来实现,该设计理念是为了快速响应用户的需求,达到快速浏览网页的效果实现,其中主要体现了对于帖子分类的分批处理,主要是由系统管理员来实现管理。二级榜单的生成。二级榜单的生成也是基于Freemarker技术来实现的,其中主要结合了Spring和Hibernate技术13来实现底层设计的实现,二级榜单的生成主要是用来实现网站的即时更新信息,该操作不是系统自动完成,主要是各个版主对于各个版块的管理,并且及时刷新相信模块信息的接口设计实现,为用户管理网站更新的接口设计。帖子搜索。帖子的搜索主要基于两种技术的整合实现,对于1-5页的帖子实现的是基于静态页面技术14的实现,主要使用的是纯静态的页面链接,当页面多余5页时,就基于Hibernate的数据库分页搜索的设计实现15,方便简洁更节省数据的搜索开销。帖子审核,帖子加精,帖子置顶,帖子管理。该4个小模块的功能主要是运用在后台的管理中,所以主要运用的技术是SSH来实现的,主要是给每个版主使用的接口设计,用来让版主管理好自己各自版块的功能接口设计,实现对帖子的整体管理的接口设计,并且对相应帖子做出不一样的处理操作的接口设计,信息管理,其中以下是主要两个流程图的展示效果图。帖子加精流程设计,如图3-6所示:图3-6 帖子加精流程图帖子加精流程设计,如图3-7所示:图3-7 帖子置顶流程图积分管理和人气造假。在BBS系统的运行当中,对于相应拥护客户的鼓励,来表现该系统的人性化实现,主要是运用积分管理规则来实现,主要是用来实现整体网站每个用户发布帖子和对该网站的贡献程度决定的,实现对用户积分的管理操作,用来对网站信息的整体把握和对于用户的管理接口设计。然后根据相应的积分条件做出相应的系统奖励行为。而人气造假主要是营造系统非常受欢迎的假象,主要用来实现整体网站有很高流量的假象,用来实现网站流量的整体控制16,对于网站的人流量有着监督作用。版面和板块的管理版面管理主要用来实现首页整体版面分类的整体管理实现,实现版面的相应操作实现的界面接口设计。板块管理主要是用来实现每个版面下面的各个子板块的管理操作,实现各个板块相应帖子的处理操作。总结,以上的6个功能是本文实现该系统设计的主要体现,也是运用本文使用技术的具体表现,用来实现理论和实现相结合的主要功能点,实现了整个BBS的一部分功能。附加功能:自动转载,该功能主要是用来实现对于当前网络最红帖子的直接转载实现,尚在思考设计中。3.4.5 完成相应功能模块的类说明本文实现的相应模块的程序代码设计类,其中主要实现静态页面相关的类主要如表3-8所示:表3-8 功能需求的实现同各块程序的分配关系表功能模块代码程序帖子服务、榜单生成、帖子审核、帖子加精、帖子处理、帖子菜单生成、搜索帖子主要类和接口:实体类:PostList 、 PostCheck数据持久化类: PostListDaoImpl 、 PostCheckDaoImpl接口: PostListDao 、 PostCheckDao业务逻辑层设计类: PostListServiceImpl 、 PostCheckServiceImpl接口: PostListService 、 PostCheckService表示层设计类: PostListAction 、 PostCheckAction数据封装转换公用类: PostListInfoChange 、 PostCheckInfoChange在线用户统计、访问量统计主要类和接口:实体类:UserInfo 数据持久化类: UserInfoDaoImpl 接口: UserInfoDao业务逻辑层设计类: UserInfoServiceImpl 接口: UserInfoService表示层设计类: UserInfoAction 数据封装转换公用类: UserInfoIChange版面管理(增、删、改、查)板块分类、版主管理(增、删、改、查)主要类和接口:实体类:Board 、 BoardGroup数据持久化类: BoardDaoImpl 、 BoardGroupDaoImpl接口: BoardDao 、 BoardGroupDao业务逻辑层设计类: BoardServiceImpl 、 BoardGroupServiceImpl接口: BoardService 、 BoardGroupService表示层设计类: BoardAction 、 BoardGroupAction数据封装转换公用类:BoardInfoChange 、 BoardGroupInfoChange积分管理、人气作假、制定规则主要类和接口:实体类:Score 数据持久化类: ScoreDaoImpl 接口: ScoreDao业务逻辑层设计类:ScoreServiceImpl 业务逻辑层设计接口: ScoreService表示层设计类: ScoreAction 数据封装转换公用类: ScoreInfoChange3.4.6 接口设计Dao Interface :void saveBoard(Board board); /通过传入一个Board对象,并把该对象保存在数据库中。void updateBoard(Board board);/ 通过传入一个修改过后Board对象,对该对象进行数据库更新。void deleteBoard(Board board);/ 通过传入一个Board对象,并把该对象的删除标志位设为0。Board findBoardById(int id);/ 通过传入一个已封装的Board对象,并把该对象拆分之后,按照对象的id查找该对象。List findByProperty(String type, Object text);/ 通过传入一个已封装的Board对象,并把该对象拆分之后,按照对象传入的查找类型和查找内容进行查找。List findByPropertyFather(String type, Object text);/ 通过传入一个已封装的Board对象,并把该对象拆分之后,按照对象传入的查找类型和查找内容进行查找。Service Interface:boolean editBoard(BoardInfo boardInfo);/ 接收由action端传入的缓存对象,并调用DAO层方法对该对象进行修改。void removeBoard(BoardInfo boardInfo);/ 接收由action端传入的缓存对象,并调用DAO层方法对其进行删除。List searchBoard(BoardInfo boardInfo);/ 接收由action端传入的缓存对象,并调用DAO层方法查找出匹配的数据。boolean storeBoard(BoardInfo boardInfo,String boardManager);/ 接收由action端传入的缓存对象,并调用DAO层方法对其进行保存。现在主要展示的是对于Board模块功能的简单测试,相应的接口设计实现,而其他的接口模块的设计和该模块的接口设计相差不多在这里就不再进一步的说明阐述了,其中这里的主要接口设计是为后期的详细接口设计提供一个规范标准,这样有助于整体系统的代码编写规范化。3.5 概要设计说明 概要设计说明先从用户角度考虑了各种需求,再根据需求给出系统设计,然后以图片形式展现了整个系统框架。然后设计系统的整体原型设计,再根据相应的需求分析设计和原型设计构建数据库的整体设计实现17,然后划分相应完成的功能模块利用相应的技术实现其功能,并且做好相应的类和接口的设计实现。3.6 详细设计实现本文的详细设计说明主要是进一步细化软件概要设计得出的BBS系统的总体概貌,并且进一步把它加工成在程序细节上非常接近源程序的设计说明实现。3.6.1 系统主要目标该文的主要目标是实现BBS在基于快速访问的基础上,进行BBS的相关服务,从而达到用户对于该系统的相关体验。其中主要的技术是基于Freemarker技术的实现18,还有结合了SSH三层框架19的后台总体服务支持。本文主要解决BBS系统静态网页的自动生成的方案设计20,主要有以下几点:实现了静态帖子网页的自动生成。帖子的相关处理的管理,例如审核,置顶,删除等。整体系统的版面管理。各个用户的积分处理,系统的积分管理和设置。整体系统的人气造假管理和设置。3.6.2 整体系统的功能需求静态帖子自动生成静态帖子的自动生成主要的流程步骤如图3-9所表示,其中主要的功能有对于整体系统的帖子管理和版面管理。该流程的主要参与者角色有两种,一种是系统管理员,一种是版主,他们各自有着不同的角色功能。系统管理员主要管理的是整体系统的版面管理,其中主要涉及到的是整体网站的第一级页面的生成,以及首页的展示效果。版面管理主要有包括版面管理和版面组管理,其中版面管理主要涉及的功能实现有,对于版面的增,删,改,查,而版面组的主要功能是为各个版面提供一个集合,所以版面组是管理版面的类别组。当系统管理员处理好版面管理后,应该记得手动进行网站的整体更新,利用模板生成相应的静态页面21以达到系统用户的快速浏览。版主的主要功能是实现网站各自模块帖子的管理,帖子管理主要的子功能有,帖子的审核,置顶,加精,删除等。当版主登录到相应版主管理页面时,对于自己负责的版面进行相关的帖子管理,当对于帖子的所有操作都完成后应当手动操作网站的整体更新,此时主要是用来生成帖子的二级目录,实现帖子标题和相关内容的搭配,并且完成静态页面的自动生成。图3-9 静态帖子生成用例图帖子管理帖子管理主要是用来维护整体网站的合法性,用人工控制的手段来净化网络的一些信息资源,达到绿色网络的效果。帖子管理主要划分成4个功能模块,分别为帖子审核,帖子加精,帖子置顶和帖子删除。其中各自的功能模块又可以划分成几个小功能模块,其中帖子审核又划分成,审核通过、审核失败、批量审核、批量审核失败4个小功能;帖子加精也划分成,帖子加精和批量加精;帖子置顶也可以划分成为帖子置顶和批量置顶;帖子删除有自己两个小功能模块分别是帖子删除和批量删除。划分成这些小功能模块的主要目的优化版主的管理实现,达到简单化管理与操作。具体的流程步骤主要如图3-10所示,其中图3-10主要体现了对于帖子管理的数据流的流向方向。图3-10 帖子管理用例图版面管理版面管理主要是实现了系统管理员对于整体网站的维护管理。其中版面管理又划分成版面组管理和版面管理。版面组管理实现的是整体网站的栏目更新,对于整体网站各个版面的分类管理,主要涉及到的功能有版面组新增和版面组删除。而版面管理主要的功能也是版面的新增和版面删除,版面的管理主要是实现了对于整体网站各个版面的描述和管理,其中应先对版面组进行相应处理才能处理相应模块的版面,当版面的相关处理结束后系统会根据相应的模板,自动生成首页和相应的模块,实现系统数据库的减负和访问的高效性22。其中,如图3-11所表示的就是版面管理用例图:图3-11 版面管理用例图系统积分管理系统积分管理主要针对的是整体系统的用户积分平衡而设定的,其中系统管理员可以设置相应操作的积分管理实现。主要的功能有积分的更改,修改系统中对于各种操作的积分处理,比如发帖时候当发帖通过审核后,发帖者获得相应的积分,如果没有通过则不得分,当发的帖子有不良影响时候获得负分的效果,以便将来对于积分进行相关的优惠活动。系统的积分管理,是一个可扩展的功能,目前只有实现相当简单部分对于积分的修改和测试。如图3-12所表示就是系统积分管理的用例图:图3-12 系统积分管理用例图系统人气造假主要实现的是对于当前系统的访问人数的表面体现,获取当前系统的访问人数,并且在这基础上进行人气的造假实现,更改网站相应的访问数量,用来获得网站好像人气很火的表面现象。系统人气造假的主要用例图如图3-13所示:图3-13 系统人气造假用例图3.6.3 功能模块说明功能模块的说明,主要是基于在用例图的基础上对于系统的各个功能进行进一步的解释说明,以便达到编码人员快速理解用户需求的目的。功能的说明主要从整体模块入手,进行各个小功能的进一步解析。表格3-14就是对该文说明的功能模块进一步的解析,分析相应的数据流程:表3-14 系统功能介绍静态网页自动生成模块名称功能简述网站更新网站的更新,首先要基于系统管理员或者版主对于网站相应信息的更改。对于网站相关栏目或者帖子处理完以后,调用网站自动更新程序。网站更新调用相应的功能模板(FTL)23生成静态的网页,实现静态链接,快速访问。模块名称功能简述帖子管理帖子管理主要包含审核、置顶、加精和删除。帖子审核,是通过系统调用相应新发表或者还未通过审核的帖子,并且查看相应帖子的具体内容,根据其信息判断帖子是否通过审核。帖子置顶,对于一些优秀的帖子实现置顶的管理,并且让其在首页上进行滚动播放。帖子加精,通过对于帖子信息采编,加精相应帖子。最后是对于系统没有用,或者是垃圾信息的帖子处理,采用删除的功能来实现,主要有个别删除和批量删除。模块名称功能简述版面管理设置相应的版面组的管理功能,包含了新增和删除的实现。新增相应版面组信息,并且做出相关的描述输入。在已有的版面组中,进行下一级的版面管理。对于版面进行增、删 、改,并且与相应的版面组建立关联。版面管理操作结束后,系统自动调用FreeMarker技术开发的相应模板24,自动生成前台网站的静态页面,结合FTL模板动态生成shtml整合页面25。系统维护模块名称功能简述系统积分管理积分默认。系统启动时,整体网站积分系统的默认输入操作,实现静态人工录入。查看积分。相关积分的查看,主要是网站中各个操作功能以及帖子相关信息的奖励积分制定,查看相关积分制定是否科学。积分更改。系统积分设置不科学时,可以通过人工更改的方式来干预系统积分服务,更改相应的积分制定规则,按照合理分配。模块名称功能简述系统人气造假查看当前系统的人气值是多少,通过对于当前的人气值判断网站的整体访问量,实现对于网站流量的整体控制。人气造假。更改当前的人气,用来伪造系统访问量很高的假象,推高网站的名气。数据库更新。人气造假值更新到数据库当中,实现数据的一致性。该操作主要实现的是系统整体数据的可控性,并且达到数据更新效果。模块名称功能简述帖子搜索按照时间的长短搜索当前版面下该时间段的帖子,时间分成一天内、两天内、三天内和一周内。帖子搜索。对于时间的模糊站内搜索实现。帖子搜索主要是输入相关信息获得帖子相关的信息,其中最主要的是基于数据库的分页搜索实现26。3.6.4 接口详细设计接口的作用简单一点就是:接口是用来标记类的,不同的类属于不同的接口(通过向上转型),管理接口比管理各种各样的类方便多了,接口体现了抽象的观点,什么是抽象?抽象就是抽去像的部分。接口的意义就是解决代码的重用性,并且降低代码的耦合度,提高了模块的独立性27。网站更新接口设计表3-15 网站更新接口设计模块名称网站更新功能描述主要的功能时就按照Freemarker技术28,结合已经设计好的相应模板生成静态的html页面,用来使用户能够快速的访问该BBS系统,并且通过数据库获取相应的最新信息,从业务逻辑接口层设计29主要实现的是对于整体网站更新的业务逻辑的抽象化处理,实现表示层信息和逻辑处理层相互分离的作用,体现了模块的独立性。从数据持久层接口主要实现的是数据的持久化,还有提取数据库最新信息,管理数据库的会话的操作实现30。接口属性主要的接口设计类:业务逻辑层接口设计类:BoardGroupService、BoardService、PostListService、UserService其中对于BoardService接口做进一步的深入解析。主要的接口函数有:boolean editBoard(BoardInfo boardInfo);返回boolean类型参数传递的是一个临时对象BoardInfo里面包含了从表示层输入的相应信息,参数是对象BoardInfo主要的功能调用表示层传入的临时对象,经过业务逻辑层的相关处理更新数据库对象Board,修改数据库数据void removeBoard(BoardInfo boardInfo);返回void;参数传递的是一个临时对象BoardInfo里面包含了从表示层输入的相应信息,参数是对象BoardInfo主要的功能是通过临时对象里面的id,删除该id编号的数据库对象Board,修改数据库List searchBoard(BoardInfo boardInfo);返回List对象;参数传递的是一个临时对象BoardInfo里面包含了从表示层输入的相应信息,参数是对象BoardInfo主要的功能是通过临时对象中的搜索信息,查询相关的Board信息,返回一个List对象数组BoardInfo searchBoardById(int id);返回临时对象BoardInfo;参数传递的是一个int型数值,参数是int值主要的功能通过主键id去查找相应的Board对象,最后在业务逻辑
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 【正版授权】 ISO/IEC 24760-1:2025 EN Information security,cybersecurity and privacy protection - A framework for identity management - Part 1: Core concepts and terminology
- 飞机钣金工入职考核试卷及答案
- 棉花播种工艺考核试卷及答案
- 锅炉设备试压工标准化作业考核试卷及答案
- 糖艺师设备维护与保养考核试卷及答案
- 高职院校优化数字人才培养链的现实需求与策略研究
- 选矿技术考试题库及答案
- 2025中国农民丰收节庆农业丰收享美好生活
- 银行招聘试题及答案网站
- 银行营销考试题及答案
- 2025贵州金沙县招聘城市社区工作者15人考试参考题库及答案解析
- 2025版权授权合同标准版样本
- 2025年金属非金属矿山(露天矿山)安全生产试题题及答案
- 2.1.2 不含括号的两级混合运算(课件)数学人教版三年级上册(新教材)
- 县级医院医疗质量控制方案实施细则
- 2025菊花批发合同
- 短视频制作服务协议合同
- 2025年中国电信面试题预测及备考要点
- 2025年养老服务领域突出问题专项整治工作动员会讲话
- 护工运送标本培训
- (正式版)DB15∕T 2095-2021 《政务公开标准目录编制规范》
评论
0/150
提交评论