APP下载

基于S2SH框架的博客管理系统设计

2012-07-09方志斌

时代农机 2012年1期
关键词:博主博客框架

方志斌

(东华理工大学 信息工程学院,江西 抚州 344000)

1 系统架构设计

博客管理系统是为了方便博主BLOG信息的浏览以及用户对博主的BLOG信息进行评论而开发。因此,需要满足两方面的需求,这两方面分别为管理员和访问者。对于访问者而言,此软件主要用于用户能够及时查询到博主的最新博客,对博客的内容进行评论,跟博主留言;对于管理员而言,可以发表一些个人的文章或者生活照片等也可以上传视频,音乐等与他人共享,通过BLOG和好友进行交流。主要包括:记录所见新闻,一时心情和日常信息,记录在学习过程中遇到的问题和解决方案,分享自己的生活经历,上传自己喜欢的图片,视频,音乐等。

在以往项目开发中一般采用JSP+Servlet+JavaBean的方式。在这种传统开发方式中,虽然相对于Model1已经有了很大的改进,但是开发人员需要手动实现MVC模式,在考虑业务逻辑的同时还必须考虑如何进行系统架构。这样既影响了开发效率,也不利于系统的维护。为了提高开发的效率,并且进一步改进系统框架的安全性、稳定性以及健壮性,本系统采用基于MVC 模式的Spring、Struts2、Hibernate框架的分层架构设计。

Spring是一个非常活跃的开源框架,它是一个基于IOC和AOP来构架多层J2EE系统的框架。在本人的这个设计中基本上只体现了其中的一部分也就是IOC依赖注入,所谓的依赖注入就是Spring通过一种称作控制反转(IOC)的技术促进了松耦合。当应用了IOC,一个对象依赖的其它对象会通过被动的方式传递进来,而不是这个对象自己创建或者查找依赖对象。

Struts框架作为经典的MVC设计模式的一种具体实现,即模型——视图——控制器模式的一种实现,提供了对开发MVC系统的底层支持。全新的Struts2的体系结构与Struts1的体系结构的差别巨大。Struts2以WebWork为核心,采用拦截器的机制来处理用户的请求,这样的设计也使得业务逻辑控制器能够与ServletAPI完全脱离开,所以Struts2可以理解为WebWork的更新产品。

Hibernate定义为一个对象/关系数据库映射工具(ORM),它作为开源的持久层框架已经为众多的软件开发项目所采用,对JDBC进行了轻量级的对象封装,使程序员可以使用对象编程思想来操作数据库。在本系统中,Hibernate通过配置文件(hibernate.cfg.xml)和映射文件(***.hbm.xml)把持久化对象(POJO)映射到数据库中的数据表,然后通过操作POJO对数据表中的数据进行增删改查等操作。

2 系统功能模块设计

本系统旨在开发一个界面友好,使用简单,能提供对文章信息、照片信息以及留言板情况的浏览、编辑、查询等全面的数据管理功能,同时使用户能方便的对博主信的信息进行评论的综合性博客管理系统。此外系统还具有一定的安全性和可维护性。因此,本博客系统实现的功能主要有以下:注册功能、登陆功能、发表文章、评论、相册、留言板等系统的功能模块如图1 所示。

在本系统中,可以把功能模块分为4个功能集合来描述:

(1)登陆模块。系统在启动时会调用登陆界面,它用于何时用户的合法性。用户类型分为管理员和普通用户两种,管理员可以进行用户信息管理和权限的控制,而普通用户只能对博文进行评论以及给博主留言。

(2)注册模块。注册模块使得用户能够在网站上注册自己的信息,以便在以后的访问中可以直接登录,网站也可以通过注册模块保存用户信息,让用户能够在网站上随时查阅自己的信息和聚合内容。因此,注册模块在网站开发中是一个必不可少的模块。

(3)文章管理模块。该模块是整个系统的最重要的模块,是用户登陆博客后主要写作的地方。针对不同的用户文章管理模块授予用户的权限不同。对应管理员来说,可以对文件进行增删改查操作;对于普通的用户来说,只可以进行查看文章。在实现该模块的添加文章的子功能时,采用CKEditor,对于用户在文章添加表情、图片等提供了方便。

(4)评论模块。在该模块中针对发表的文章,登陆用户可以对文章进行评论。

图1 基于S2SH的博客管理系统功能模块示意图

3 部分功能实现

(1)Struts2的校验框架。为了保证系统中注册用户信息的完整性及安全性,该博客的注册模块采用了Struts2的校验框架进行验证,要求用户必须输入密码保护问题和密码保护答案。struts2校验代码如下:

4 结语

本文介绍了使用SSH框架来设计和实现博客管理系统。系统技术上主要具有以下特点:①采用J2ee技术开发,具备了良好的可扩展性和可维护性;②架构灵活:采用了Struts框架,实现了MVC的三层结构,整体系统结构清晰,扩展性良好;③采用Spring框架管理业务逻辑组件,使得代码更易于测试;④采用DAO等设计模式,模块之间为松散耦合,可灵活增加

[1]陈家瑞,叶少珍.基于Struts架构的电子商场系统设计与实现[J].福州大学学报(自然科学版),2005,(6).

[2]孙卫琴.精通Hibernate:Java对象持久化技术详解[M].北京:北京电子工业出版社,2005.

[3]艾晓燕,蔺跟荣,徐东升.基于Struts框架的科技管理系统的设计与实现[J].电子设计工程,2009,17(10).

[4]Buiti Kumiawan.深入浅出Struts[M].北京:人民邮电出版社,2007

[5]刘中兵.Java高手真经应用框架卷[M].北京:电子工业出版社,2008.

[6]罗时飞.精通Spring——深入Java EE开发核心技术[M].北京:电子工业出版社,2008.

猜你喜欢

博主博客框架
跟着零食博主买拼多多小吃
如果孩子想当美妆博主
框架
时尚博主谢慕梓:分享身边的美
广义框架的不相交性
关于原点对称的不规则Gabor框架的构造
一种基于OpenStack的云应用开发框架
博客天下
创意折纸小动物
博客相册