openfans整体设计介绍

         先说一下openfans最早版本的整体设计。首先是用Equinox直接new出项目来,它默认是springmvc+spring+hibernate再加­上一些常用的组件,如sitemesh,common-validator,dwr等。而这些都是我们想要的。 
         有了这个大的框架,我们可以进行业务建模了,我们采用的是领域模型驱动的设计方案。首先考虑的是对象以及对象间的关联,我们也没用什么建模工具和自动生成工具,­先自己写java类,写好属性,用eclipse生成get和set。然后手写hibernate的hbm配置文件,有点土,这也是我第一正式的使用hiber­nate。开始我用了dao模式,写了好多dao,后来和oofrank讨论,一直认为hibernate就是我们的持久层,完全没有必要为了移植性(如将来使­用ibatis)而引入dao。所以抛弃了dao模式,而由一个façade处理持久。这样的设计跟一般的三层模型略有不同,hibernate就是我们的持久­层,然后通过一个façade提供对上层的接口。领域模型和mvc中的c充当我们的业务层。我们的对象不是贫血模型,而是有能力的。当然现在这种能力更多是对象­间的关联,而对持久层无能为力,但也已经方便了很多。Controller现在具有较多的功能,它能调领域对象,也能直接使用façade。然后是jsp+js­tl+el做纯粹的展现层。C和V的分类原则是这样的:一类是查看,一类是form提交。所有查看由一个viewController统一处理(这样增加了一些­耦合,但效果还可以),一个对象的增、删、改由一个formController处理。 
           有了这些设计原则,做起来倒是很快,几天就核心功能出来了。对于数据库,只要建一个库就行,其余的如建表,改表等都由hibernate来自动帮你完成,数据库­就是在写hbm时关心下,其它完全对我们透明,感觉还是挺爽的。 最初版一共就20几个类,完成了很多的功能,可以具体看 www.openfans.org
           下一篇写怎么使用maven和tomcat,让openfans在自己机器上跑起来。先去吃饭了,^_^。大家有任何疑问和好的改进意见,都可以提,跟帖。

posted on 2006-03-28 11:51 pesome 阅读(1499) 评论(3)  编辑  收藏 所属分类: 开源软件

评论

# re: openfans整体设计介绍 2006-03-28 20:22 江南白衣

haha,fascace的代码是怎么样的?  回复  更多评论   

# re: openfans整体设计介绍 2006-05-17 11:06 Yanni

非常不错。
严重关注,不过我对java不熟,对php比较了解

有什么需要帮忙的,经管提,我也加入groups了  回复  更多评论   

# re: openfans整体设计介绍[未登录] 2008-03-12 20:15 rock

spring中如何开启hibernate的自动建表功能啊  回复  更多评论   


只有注册用户登录后才能发表评论。


网站导航:
 
<2006年3月>
2627281234
567891011
12131415161718
19202122232425
2627282930311
2345678

导航

统计

公告

主要记录作者在学习java中的每一步足迹。除非特别说明,所有文章均为本blog作者原创,如需转载请注明出处和原作者,如用于商业目的,需跟作者本人联系。
欢迎大家访问:

常用链接

留言簿(16)

随笔分类

随笔档案

文章分类

文章档案

相册

收藏夹

java技术

人间百态

朋友们的blog

搜索

最新评论

阅读排行榜

评论排行榜