项目背景:实现一个在线的相册管理系统,主要功能包括以下几点:
整个项目采用struts2框架,前台页面主要是jsp,基于tomcat服务器,在eclipse编译环境下,数据库用的是mysql数据库。
整个项目运行的流程图如下( 以登录为例 ):
最终整个项目历时一个月完成,所有的代码总共有6000行,因为是一次比较正式的实习项目,所以所有的东西都有文档记录。
这个项目比较简单,是刚开始接触struts2的时候边学基础边写的,所以很多地方都不太完善,有很多的不足之处。接下来,我指出不足之处,并给出解决方案:
(1)首先要严格执行分层策略:
第一层按照模块分,本项目中的体现就是登录注册模块、处理相册模块等等。
第二层按照三层分,即数据层–逻辑层–模型层–vo。
第三层按照内划划分,比如对于数据层(Dao)分为接口(dao)、实现(impl)还有工厂(factory),对于逻辑层(business)也分为接口(ebi)、实现(ebo)和工厂(factory).
这样分层之后,jsp页面就只和ebi交互,ebi为界面组织数据。ebi调用dao实现业务逻辑的处理,而dao层主要和数据库交互,实现增删改查等功能。
(2)业务处理需要分开来写,一个类对应一个业务的处理,这体现了类的单一性原则。所有的接口都与实现类一一对应,但所有的处理方式都是类似的。
需要注意的地方就这些,大家有什么意见或者建议欢迎留言。