最近在做一个webwork的项目(主要是用在手机上),趁现在空点下来,写写总结。
webwork总体给我的感觉是方便。做了如下一些总结:
一:项目结构
1. 项目结构:webwork+hibernate(3)+spring+freemarker
二:项目细节
1. webwork.xml 作为webwork的配置文件。
最好将分项目都分别写到xwork-*.xml中,然后在总的一张xwork.xml中将它们包含进来。
这样的设计思路比较的清晰,维护起来也比较的方便。
2. webwork中的action,最好是一个功能模块对应一个包文件和一个action类。
3. 最好一个功能模块对应一组services接口和services实现类,它们将操作数据库(主要是调用
自己封装好的Dao层)、调用webservices的具体逻辑封装起来。这样整个功能的目录结构比
较的清晰。比如这个相对简单的例子--登录(login),则对应着一组ILoginService和LoginService。
其中LoginService中主要的服务为:检验当前的用户名和密码是否是合法用户。
设计services这一层的目的网上介绍了许多,在这里简单的说明下。设计这一层是为了隔离action
层直接跟Dao层或者是Webserivce层打交道,到时候修改起来不用修改action层,只要修改service
层的具体实现,简单的说耦合性降低了。
4. 自己编写一个基类继承HibernateDaoSupport。使用自己的基类,到时候不用Spring了,直接将
HibernateDaoSupport去掉就可以了。在基类中封装好CRUD功能、甚至是分页。这样的话,这个
基类可以用到任何一个工程中。具体项目的Dao则可以继承该基础类。
5. 将常用的工具类集中放到工具包中。
6. 将java类和通常的配置文件、属性文件分别放到两个文件夹,这样的目录结构比较的清楚。同时,
hibernate的映射文件、spring配置文件、xwork-*.xml的配置文件分别单独成包。