




已阅读5页,还剩17页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
宜春学院数学与计算机科学学院课程设计 宜春数学与计算机科学学院 课程设计说明书 课 程 名 称: ssh之个人博客管理系统 题目: 个人博客系统 年级/专业/班: 组长: 组员: 指 导 教 师: 张老师 开 题 时 间: 年 月 日完 成 时 间: 年 月 日第II页目 录1 概述1.1. 引言2 系统分析2.1 需求分析2.3 开发工具简介2.3.1 MyEclipse MySQL Tomcat 6.03 系统设计3.1 总体设计原则3.2 架构概述3.3 系统模块设计3.4 数据库结构的设计3.4.1 数据库的概念设计4 系统实现4.1 系统的开发环境4.2 登录模块的实现4.2.1 功能描述4.2.2 模块实现4.3 博文管理模块实现4.3.1 功能描述4.3.2 模块实现4.3.3 分类管理模块实现4.3.4 用户管理模块实现4.3.5 评论管理模块实现4.3.6 首页管理模块实现4.3.7 其它功能模块实现 5 总结与展望 6 参考文献基于SSH2的个人博客系统的设计与实现1 引言现在越来越多的人都拥有了自己的私人博客,而且很多公司,单位也都有自己的博客,在这些博客中每个都有自己独立的特点,都有自己的风格,为自身树立了一个与众不同的形象,博客也变得越来越普遍,它逐渐成为一个随时可以记录自己以及身边发生的一切的地方,在这里可以发表自己的观点,谈自己的想法,也可以和别人交流,学习到更多东西,研究博客具有很大的价值博客是继Email、BBS、ICQ之后出现的第四种网络交流方式。博客是网络时代的个人“读者文摘”。博客是以超级链接为武器的网络日记。博客是信息时代的麦哲伦。博客代表着新的生活方式和新的工作方式,更代表着新的学习方式。通过博客,让自己学到很多,让别人学到更多。总之,博客是一个正处于快速发展和快速演变中的互联网新应用。在市场术语中对博客的定义为:一种表达个人思想和网络链接,内容按照时间顺序排列,并且不断更新的出版方式。Pyra创始人EvanWilliams认为博客概念主要体现在三个方面:频繁更新(Frequency)、简洁明了(Brevity)和个性化(Personality)。在网络上发表Blog的构想始于1998年,但到了2000年才真正开始流行。而2000年博客开始进入中国,并迅速发展,但都业绩平平。直到2004年木子美事件,才让中国民众了解到了博客,并运用博客。2005年,国内各门户网站,如新浪、搜狐,原不看好博客业务,也加入博客阵营,开始进入博客春秋战国时代。目前网络上数以千计的Bloggers发表和张贴Blog的目的有很大的差异。不过,由于沟通方式比电子邮件、讨论群组更简单和容易,Blog已成为家庭、公司、部门和团队之间越来越盛行的沟通工具,因为它也逐渐被应用在企业内部网络(Intranet)。 博客正在改变社会交流方式。2 系统分析2.1 需求分析2.1.1 功能需求分析登录个人博客个人发表过的博客个人分类管理分类信息博 客 管 理外部实体(人或部门)数据处理数据存储数据流向评论管理评论信息注册新用户用户信息图 2-1 系统数据流程图注册新用户没有博客账号的用户,可以通过此功能注册一个新的博客。用户登录用户填写正确的用户名和密码,否则提示相应信息。博客管理用户登录博客后,可以发表属于自己的博文,还能对发表的博文进行管理,包括编辑、删除等。分类管理用户可以为博文添加自己喜欢的分类,还能对已添加的分类进行编辑、删除等操作!留言管理用户登录博客后,可以发表博文,回复博文。退出用户操作完毕后,点击退出,将重新返回登录页面!2.1.2 可行性分析(1) 技术可行性:使用现在流行的JSP、SSH框架与MySQL数据库结合的方法可以完成本系统的开发。而且就目前而言,已经有不少使用类似方法开发成功的例子。(2) 经济可行性:使用MyEclipse开发个人博客管理系统,是这个开发工具的强项。在技术上是完全可行的。(3) 法律可行性: 本系统的开发是由本组成员在老师的指导下完成,不涉及任何公司任何个人的私有信息,不存在任何侵和知识产权的问题和行为。(4) 社会可行性:现代社会是信息高速发展的社会,尤其是计算机的日趋成熟,选择使用计算机对个人博客进行管理已经成为现代教学的必然选择,所以从社会的角度对本系统进行分析是完全可行的。(5) 操作可行性此博客系统具有简单、快捷、低成本的特点。博客像是简化了的个人主页,只需几分钟的时间就可以申请到一个属于自己的博客空间,并方便地发表观点或评论,快速建立自己的网络形象。只要“会上网打字,就会博客”,与传统的个人主页相比,它的优点在于简单、快速和“入门免费”。次博客界面美观,功能齐全,一幕了然,更能使用户方便使用。2.2 开发工具简介该系统的后台主要是在MyEclipse 8.6中开发完成的,其中数据库使用的是MySQL5.1,为了更好地操作数据库进行Windows图形化界面的数据库操作工具,服务器使用Tomcat 6.0。2.2.1 MyEclipse 8.6MyEclipse3,是一个十分优秀的用于开发Java,Java EE的Eclipse插件集合,MyEclipse的功能非常强大,支持也十分广泛,尤其是对各种开源产品的支持十分不错,如图2-2所示。图 2-2 MyEclipse 8.6它是功能丰富的Java EE集成开发环境,包括了完备的编码、调试、测试和发布功能,完整支持HTML,Struts2,JSP,CSS,JavaScript,Spring,SQL,Hibernate。2.2.2 MySQL5.1MySQL1 是一个关系型数据库管理系统,由瑞典MySQL AB公司开发,目前属于Oracle公司。MySQL是最流行的关系型数据库管理系统,在WEB应用方面MySQL是最好的RDBMS(Relational Database Management System:关系数据库管理系统)应用软件之一。MySQL是一种关联数据库管理系统,关联数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。MySQL所使用的SQL语言是用于访问数据库的最常用标准化语言。MySQL软件采用了双授权政策(本词条“授权政策”),它分为社区版和商业版,由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,一般中小型网站的开发都选择MySQL作为网站数据库。由于其社区版的性能卓越,搭配PHP和Apache可组成良好的开发环境。如图2-3所示。 2.2.3 Tomcat 6.0Tomcat5是Apache 软件基金会(Apache Software Foundation)的Jakarta 项目中的一个核心项目,由Apache、Sun 和其他一些公司及个人共同开发而成。是目前比较流行的Web 应用服务器,如图2-4所示。图 2-4 Tomcat 6.0 7基于SSH2的个人博客系统的设计与实现3 系统设计系统设计主要对系统的总体功能如何设计,如何划分模块,系统的数据库如何设计进行研究,它为系统的实现做铺垫。在系统的设计过程中起着非常重要的作用。3.1 总体设计原则(1) 开放性、可扩充性、可靠性原则开放系统是生产各种计算机产品普遍遵循的原则,遵循这种标准的产品都符合一些公共的、可以相互操作的标准,能够融洽的在一起工作。开放系统使得各种类型的网络和系统互连简单、标准统一,容易扩展升级。从而适应广大用户需求的多变性和产品的更新换代。(2) 安全性原则采用密码登陆,防止用户个人信息泄露。(3) 良好的用户操作界面用户操作界面美观、方便、实用,是用户能在较短时间内掌握其实用方法。(4) 实用性原则任何系统的设计都要考虑其实用性,系统开发的目的是为了实现业务处理自动化、规范化,提高工作效率,减轻工作人员的劳动强度,减少开支,规范管理。3.2 架构概述本项目涉及关系数据库理论的规范化,以解决函数依赖和数据依赖问题。整个系统基于SSH(Struts2 + Spring + Hibernate)技术10,不但可以有效提高系统开发效率,而且在系统安全性、稳定性和健壮性上都有良好的改进。表现层使用了Struts2框架11,实现了视图控制分离。业务层使用了Spring框架12。Spring是一个业务层框架,一个整合的框架,能够很好地黏合表示层与持久层。Hibernate框架13是JDBC的轻量级的对象封装,它是一个独立的对象持久层框架。Hibernate的强大缓存机制能一定程度上的缓解服务器端频繁读取数据库的压力,这也是Hibernate被广泛使用的重要原因之一。3.3 系统模块设计(1) 根据第2章的功能需求分析用户模块用例图,如图3-1所示。图 3-1用户模块用例图 3.4数据库结构设计用户表:记录用户名和密码,用于管理员的登录。博文表:记录发表过博文的一些属性:如博文名和发布日期等。分类表:记录博文所属分类的表,包括分类名,用户ID等属性。留言表:记录用户对博文留言,包括留言内容,留言日期等属性。3.4.1 数据库的设计数据库的概念设计15,即利用数据模型进行概念数据库的模式设计。根据个人博客管理系统的需求,设计出以下的实体-属性模型图。(1) 用户实体-属性如图3-8所示。用户名用户用户ID用户密码图 3-8 用户实体-属性图(2) 博文实体-属性如图3-9所示。博文内容博文发布日期分类ID博文ID博文标题用户ID图 3-9 博文实体-属性图(3) 评论实体-属性如图3-10所示。评论博文标题评论时间评论内容评论ID评论标题评论人图 3-10 评论实体-属性图(4) 分类实体-属性如图3-11所示。分类等级分类用户ID分类ID分类名图 3-11 分类实体-属性图4 系统实现4.1 系统的开发环境(1) 服务器端: 操作系统平台:Windows、Linux、Unix; 系统开发平台:Java EE; Web服务器:Tomcat 6.0; 数据库:MySQL5.1; 开发语言:Java、JSP、JavaScript。(2) 客户端: 操作系统:Windows、Linux、Unix; 浏览器:IE。4.2 登录模块的实现4.2.1 功能描述 个人博客管理系统的用户登录模块,可以实现用户的安全登录,其中Radio Button和Submit按钮均是采用JQuery UI中的主题。使用HTML5的required进行客户端数据的验证。其中用户的密码不是直接传送到服务器上的,而是经过浏览器JavaScript17的MD5加密再上传至服务器,目的是为了防止用户密码的明文被截获而造成用户账号的安全问题。该登录模块实现了国际化。 4.2.2 模块实现 如图4-1所示,为程序运行时,用户登录个人博客管理系统的截图: 如果没有账号可以先注册一个博客账号。账册界面如图4-0所示。 图 4-1 用户登录图19用户登录流程如图4-2所示。在数据库中查找该用户ID登录页面用户ID和密码空?用户ID存在?密码正确?登录成功返回到登陆界面是是否是是否否图 4-2 用户登录流程图用户登录代码片段如下所示。ApplicationContext wctx = WebApplicationContextUtils.getWebApplicationContext(request.getSession().getServletContext(); IUserDao userDao = (IUserDao)wctx.getBean(userDao); response.setContentType(text/html;charset=UTF-8); PrintWriter out = response.getWriter(); String userName = request.getParameter(userName); userName = URLDecoder.decode(userName,UTF-8); if(userName = null | userName.length() = 0) out.println(用户名不能为空); else User user = userDao.getUserByName(userName); if(user != null) out.println(对不起,您输入的用户名 + userName + 已经存在,请从新输入); else out.println(恭喜,您输入的用户名 + userName + 不存在,你可以注册!); 博客管理模块实现用户登陆成功后,用户进入自己的博客中心,用户可以选择自己需要的功能,如个人资料、留言管理等模块。3 博文管理模块实现4.3.1 功能描述博文管理模块主要包含以下几个功能模块:编辑博文、删除博文、添加博文。4.3.2 模块实现博文管理模块如图4-3所示。图 4-3 博客管理模块图 4-5 分类管理4.3.5 评论管理模块实现单击评论管理,用户可以对自己的评论内容进行管理,包括添加评论,删除评论等。图 4-8 评论管理图 4-9 发表评论4.3.6 首页管理模块实现博客的首页给人一种简洁舒服的感觉。图 4-10 首页管理4.3.7 其它功能模块实现用户密码修改流程如4-11所示。原始密码是否正确?开始输入原来的密码,修改密码和确认密码修改密码是否等于确认密码?确定?输出密码修改成功!结束否否是是是否图 4-11 管理员密码修改当用户单击“退出”时,用户则安全退出了管理模块,同时系统销毁所有的Session。用户注销代码片段如下所示。private User user;private Map session;public String execute() throws Exception user = (User)session.get(SESSION_USER);session.remove(SESSION_USER);return SUCCESS;基于SSH2的个人博客系统的设计与实现-5 总结与展望本次的系统设计在历经了两个多月后终于结束了,在这次的实验中我有了很深刻的体会,无论是在知识技术方面还是个人自身素质的培养等方面都有 了更新的认识。这次的实验过程中有悲有喜,虽然在此之前做过了课程设计,熟悉了系统开发的流程,但在这次的实验中还是碰到了很多的问题。经过近两个月的辛苦忙碌,我的系统设计终于完成了,通过这次系统设计我感觉到了要想做好一个好的“个人博客管理系统”是多么的不容易。先要确立好网站的主题风格,然后就是收集素材,接着就是规划好网站的各个模块,最后就是使他们更好的连接在一起形成一个有机整体。在这次系统设计中,我熟练的掌握了MyEclipse 8.6的使用,以及如何将三大框架Struts2,Hibernate,Spring有机的整合到一起。同时我也熟练的掌握了Adobe Dreamweaver CS5的使用,深刻的了解“DIV+CSS”的网页布局方式,更认识到了CSS的方便之处。在网站的结构上我使用了Flash元素,从而使我关于Flash在网络上应用的能力又迈出了很大的一步,同时Flash使我的网站带来了一些动感。在制作网站的时候我学到了很多的新知识,如JQuery UI美化页面的使用;DWR三级联动下拉菜单的使用; MD5和DES加密等。虽然网站上还有很多的不足之处,但是由于知识和时间有限,已经尽我个人的最大能力将最完美功能全面的系统面展现给大家,看着完全自己设计的“个人博客管理系统”很有成就感,这也是我对大学三年来所做的一次总结性设计,在以后的学习和生活中我会继续努力学习,我坚信以后会做出比这些更优秀的作品!基于SSH2的个人博客系统的设计与实现6 参考文献1罗时远,等.高校学生成绩管理系统的分析探讨J.办公自动化,2009,(12):31-33.2Ian Sommerville.软件工程M.北京:中信出版社,2006:96-103.3周平,等.Java EE大学教程M.北京: 清华大学出版社,2012:49-53.4姜承尧.MySQL技术内幕:SQL编程M.北京:机械工业出版社,2012:103-109.5Mladen Turk,Jean-Francois Arcand. The Apache Software FoundationEB/OL. /tomcat-6.0-doc/index.html.6胡崧.Dreamweaver CS5 中文版从入门到精通M.北京:中国青年出版社,2010:73-76.7ACAA专家委员会,DDC传媒.ADOBE PHOTOSHOP CS5标准培训教材M.北京:人民邮电出版社,2010:146-149.8杜秋磊,等.中文版Flash CS5完全自学一本通M.北京:电子工业出版社,2011:135-142.9Frank W. Z
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年主题公园二期项目社会稳定风险评估与社区文化发展
- 深度解读2025年废弃矿井资源再利用技术路径与产业投资策略研究报告
- 2025年生物制药靶点发现与验证技术临床试验数据共享平台建设与优化报告
- 2025年民办教育机构合规运营与品牌建设教育品牌创新管理研究与实践报告
- 中医进阶知识考试题及答案
- 中医考试题及答案语音
- 中医面试考试题及答案
- 中医食疗试题及答案文库
- Perezone-生命科学试剂-MCE
- Diethyl-2-4-ethoxyphenyl-2-ethylmalonate-d5-生命科学试剂-MCE
- 2024-2025学年江西省高一(上)期中联考物理试卷(含答案)
- 阿尔派车载IVA-W502E使用说明书
- 清华大学国家级大学生创新创业训练计划管理办法
- 2024年秋鲁教版(五四制)六年级上册英语教学课件 Bridging Unit2 Section A
- 《住宅室内防水工程技术规范JGJ298-2013》
- 中国高血压防治指南(2024年修订版)核心要点解读
- 高中数学选修一(人教A版2019)课后习题答案解析
- 法律常识题库500题及参考答案(完整版)
- 直肠狭窄的护理查房
- JJG 703-2003光电测距仪行业标准
- 淋巴漏的护理诊断及护理措施
评论
0/150
提交评论