在线191人
首页
主题表
培训咨询
标签
查搜
注册
登陆
用户
自动登陆
密码
新用户注册
忘记密码?
首页
»
论坛
»
开源JdonFramework及其应用案例论坛
上一主题
根据 JiveJdon -4.0中 JiveJdon \doc\install_cn.txt 阶段成功 安装经验 安装环境: JDK 6.0 + jboss-4.2.3.GA-jdk..
下一主题
我使用域事件来处理对象模型之间的关联关系,比如A对象中有B对象的一个列表,也就是说A和B是一对多的关系 public A{ private String modelId; private List&l..
1
2
►
Go
共有
26
回复(
2
页) 阅读536次
前往下页:
banq
发表文章: 11282
注册时间: 2002年08月03日
悄悄话
个人博客
当前离线
70人关注
JdonFramework 5.1发布
2007年09月15日 09:30
JdonFramework
顶一下
JdonFramework 5.1主要变化是增加了Hibernate3支持,并且将原来一个
Jdonframework
.jar包分为三个包:jdonFramework.jar jdon-struts1x.jar和jdon-hibernst3x.jar
如果使用struts+jdon+Hibernate架构,这三个包需要完全使用。
如果只使用Jdon框架作为业务层框架,只需要
Jdonframework
.jar ,可以使用Jdon框架的IOC管理功能,不过Jdon框架提供的CRUD流程简化将无法实现。
JdonFramework 5.1重点是增加Hibernate3整合,特别是Hibernate3的懒加载支持,通过在web.xml配置CloseSessionInViewFilter,可以实现一个请求结束后再进行Session关闭,这样,Hibernate缺省的Lazy=true功能就可以正常使用。
懒加载功能可以大幅度提高Hibernate关联性能(前提是基于
DDD
分析设计),是Hibernate必须使用的功能,但是单纯使用Hibernate却无法激活懒加载,致使很多人关闭懒加载lazy="false"。
Spring也提供了Hibernate的OpenSessionInView功能,但是它是将Hibernate的Session再表现层打开和关闭,而
Jdonframework
5.1只是检查是否打开的Session,如果有则关闭,这样缩短Session无谓开启时间,降低出错率,同时简化
事务
(Spring+Hibernate架构Spring事务缺省是read-only只读,只有配置显式create方法
事务
为非read-only后,才能使用Hibernate保存创建新资料,非常不方便);
Struts+Jdon+Hibernate(简称SJH)和Struts+Spring+Hibernate(简称SSH)最大的特点是:
1.SJH对Hibernate无侵略性,Hibernate全局配置还是在自己的hibernate.cfg.xml中配置,而不似SSH需要在Spring中配置。这样从设计上减少彼此依赖性,实现真正分层松耦合。jdon-hibernate3x.jar可以单独使用。
2.SJH以更少的代码快速实现增删改查和批量分页查询。
3.Jdon框架内置
缓存
+Hibernate二级
缓存
+懒加载最大化提高
缓存
使用效率,性能优异,有效实现数据库零访问和必要访问。
JdonFramework 5.1推出同时,也推出struts+jdon+Hibernate3的整合应用案例
http://www.jdon.com/jdonframework/download/samples_hibernate.zip
hibernate案例中是不用事先建立数据表的,而是在部署时自动建立,这也体现了
OO
系统的纯正性,将数据库打入软件的运行部署管理阶段,和系统管理在一起。
该案例领域模型图:
更多案例::
http://www.jdon.com/jdonframework/app.htm
[该贴被banq于2007年09月16日 09:25修改过]
[该贴被banq于2007年09月20日 17:33修改过]
davma
发表文章:
注册时间: 2007年08月23日
悄悄话
个人博客
当前离线
re:JdonFramework 5.1发布
2007年09月15日 10:58
顶一下
Mark下,呵呵,支持Jdon
[该贴被davma于2007年09月15日 10:59修改过]
hellohong
发表文章:
注册时间: 2007年03月31日
悄悄话
个人博客
当前离线
re:JdonFramework 5.1发布
2007年09月15日 13:20
顶一下
支持banq,有机会的话学习一下.
demoz
发表文章:
注册时间: 2007年09月05日
悄悄话
个人博客
当前离线
re:JdonFramework 5.1发布
2007年09月18日 00:03
顶一下
前几天刚在一个帖子中说要对jf进行分离,现在就看到了成品了,感谢板桥的作品,正在学习中。。。
------
再请教banq一个问题,现在的ibatis2.3中已经去除了dao,它推荐使用spring的dao实现,那么如果我用jf的话,jf自带了dao了么?
(因为正在学习其他的东西,对ibatis实现的那个例子还没看,不知道您的那个实现是用的ibatis自带的dao还是jf自带的dao)
[该贴被demoz于2007年09月18日 00:17修改过]
banq
发表文章: 11282
注册时间: 2002年08月03日
悄悄话
个人博客
当前离线
70人关注
回复:re:JdonFramework 5.1发布
2007年09月18日 08:56
顶一下
>现在的ibatis2.3中已经去除了dao,它推荐使用spring的dao实现
唉,本来我们使用框架的目的就是降低依赖,但是失去制衡的Spring已经形成垄断(这和当初它批判的
EJB
又有何区别呢?),其他框架反而依赖它,要时刻记住,java世界是一个组件世界,每个组件原本都是独立的,这是本质。
Jdon框架坚持尊重每个框架自己的独立性,Jdon框架本身也是可彻底拆分的,最后直至拆为无。
关于iBatis可以参考jdon框架的jPetstore。
关于DAO,我已经在另外一个帖子说了:DAO将被Repository替代,DAO本身概念就是数据概念,而不是对象概念,在程序架构中完全消灭数据概念是迟早的事情:
DAO和Repository有什么区别:
http://www.jdon.com/jivejdon/thread/32562.html
bsglz
发表文章:
注册时间: 2007年08月27日
悄悄话
个人博客
当前离线
re:JdonFramework 5.1发布
2007年09月18日 09:42
顶一下
支持下banq~
banq
发表文章: 11282
注册时间: 2002年08月03日
悄悄话
个人博客
当前离线
70人关注
回复:JdonFramework 5.1发布
2007年09月18日 16:20
顶一下
关于
缓存
方面性能方面的拓展,除了使用分布式
缓存
JBoss Cache以外,还有开源Terracotta,当Hibernate使用EHCache作为二级
缓存
,Terracotta会
集群
EHCache到多台服务器上。
Terracotta可以在Hibernate Session关闭情况下,在多台服务器内存中保存POJO,也就是Domain Model。
在Jdon+Hibernate架构中,Jdon缓存已经实现在Hibernate控制外部保存POJO(也就是Session关闭情况下),Jdon框架也可以使用EHCache替代原来
缓存
,从而借助Terracotta实现
集群
分布式
缓存
,提高计算性能。
http://www.terracotta.org/confluence/display/orgsite/Hibernate
[该贴被banq于2007年09月18日 16:22修改过]
chenp219
发表文章:
注册时间: 2007年09月30日
悄悄话
个人博客
当前离线
回复:JdonFramework 5.1发布
2007年09月18日 17:09
1
顶一下
我也很想支持 。可是不对jdk5以下版本兼容,将注定英雄仗剑独走天涯。我看了
Jdonframework
的源代码,尝试改造的,但是发现工作量不小,似乎要重做。难道是java本身束缚了J道?
demoz
发表文章: 6
注册时间: 2007年09月05日
悄悄话
个人博客
当前离线
回复:回复:JdonFramework 5.1发布
2007年09月18日 21:12
顶一下
对了,我现在的系统装的java版本是1.4的,那是不是意味着没办法用jf5.1了,jf现在必须要5以上么?如果这样,那我就去重装java了
还有请教下,是不是jf5.1现在无法和最新的无dao的ibatis2.3集成?或者这样问:jf5.1+ibatis2.3可以很好的集成吗?
另外:究竟ibatis集成了dao的和未集成dao的有什么区别,如果没有集成dao也可以用,那么原来集成dao究竟有什么意义?现在将dao交给spring来管理与自己管理有那些区别?
[该贴被demoz于2007年09月18日 23:39修改过]
banq
发表文章: 11282
注册时间: 2002年08月03日
悄悄话
个人博客
当前离线
70人关注
回复:回复:回复:JdonFramework 5.1发布
2007年09月19日 10:10
顶一下
>究竟ibatis集成了dao的和未集成dao的有什么区别,如果没有集成dao也可以用,>>那么原来集成dao究竟有什么意义
我已经说了,DAO是一个很虚的概念,持久层框架本身就是DAO,作为数据库操作iBatis如果没有DAO实在功能,能是持久层框架?
至于IBatis宣传那么烟雾弹你怎么会给绕进去呢(那些都是技术之外的政治意图,向Spring示好,表示自己是融入主流等等)?所以,学习技术之前,学习本质和思想很重要,关于DAO如果还想讨论请另外开帖,不在此讨论。
demoz
发表文章: 6
注册时间: 2007年09月05日
悄悄话
个人博客
当前离线
回复:回复:回复:回复:JdonFramework 5.1发布
2007年09月19日 13:33
顶一下
谢谢banq指导,经过google、baidu和您的点拨,对dao有了初步认识,谢谢
hjysuccess
发表文章:
注册时间: 2007年09月19日
悄悄话
个人博客
当前离线
re:JdonFramework 5.1发布
2007年09月19日 14:56
顶一下
banq大哥,我一直在关注这个网站,我今天才注册,一直默默的学习着,学到了不少东西,我工作才一年,无论是理论还是实践都不成熟,目前还是不断学习中,希望以后各位大虾多多指教。
qq3951819
发表文章:
注册时间: 2006年09月13日
悄悄话
个人博客
当前离线
Hibernate为什么不支持J2SDK1.4
2007年10月01日 10:57
顶一下
Hibernate为什么不支持J2SDK1.4?
J2SDK1.4可以使用Hibernate吗?
JdonFramework5.1为什么不能用CRUD简化流程,不能兼容吗?
qq3951819
发表文章: 18
注册时间: 2006年09月13日
悄悄话
个人博客
当前离线
hibernateTemplate 如何使用才能查询有参数的sql 语句
2007年10月01日 21:46
顶一下
hibernateTemplate 如何使用才能查询有参数的sql 语句
banq
发表文章: 11282
注册时间: 2002年08月03日
悄悄话
个人博客
当前离线
70人关注
回复:Hibernate为什么不支持J2SDK1.4
2007年10月02日 10:02
顶一下
Hibernate低版本支持1.4, Hibernate是一个围绕对象为核心的框架,因此,不推荐使用Hibernate查询有参数的sql 语句,在Hibernate使用中,没有SQL的影子,只有对象,这是一种全新的方式,对于熟悉SQL的程序是一个打击和革命,因此Hibernate需要重新好好学习。当然这是另外话题,不要在这个帖子讨论Hibernate力偶。
现在有不少搞PHP的人对Ruby on Rails中的Active record(也是一种O/R mapping框架)大惊小怪,实际上,Java世界N多年前o/R mapping框架就出来,EJB2的实体Bean CMP已经具备o/R 雏形。很多语言总是跟着Java出现类似思想的产品,这已经是一个不争的事实。
有好事者可以将上面struts+jdon+jpa/hibernate这个案例和RoR同样的四个关联业务模型下代码开发量比较一下(包括CRUD和自动分页功能),我敢说,没有什么区别,同样少而快速,但SJH的Java架构相比ROR优点是:
1. 无论PHP或ROR,说到底还是脱离不了数据库这个母脐,依赖数据库;而JavaEE本身作为一个厚实的中间件,已经摆脱了数据库依赖,Java通过JTA和Cache将数据库降为操作系统级别的技术,JavaEE通过
缓存
或分布式
缓存
获取几十倍的性能,而ROR至今还在为正常的性能指标而苦恼。
2.Java这个架构是完全分层的,拥有无比健壮的鲁壮性,通过反射拥有动态语言的特性,又具备静态语言的优点;而ROR这样动态语言,如果在项目管理中不狠抓单元测试,那么代码拿到客户现场就无法运行的可能性很大,但是,Java中单元测试属于锦上添花,试想:将软件生命寄托于项目管理,这不是又回到10年前的环境?
3.拥有最好的可
伸缩性
:可以无缝过渡到
EJB
等分布式
事务
集群
环境。组成一个大型系统。无需修改软件代码。JavaEE通过分布式
事务
和
集群
实现7x24小时不间断运行,就是数据库当机都不会对系统产生影响,因为大部分数据都被load到几百台中间服务器内存中了。
数据库时代的终结:
http://www.jdon.com/artichect/dbover.htm
[该贴被banq于2007年10月02日 10:23修改过]
[该贴被banq于2007年10月02日 10:23修改过]
JdonFramework(173)
共有
26
回复(
2
页)
Go
1
2
►
上一主题
返回本主题
返回主题列表
返回页首
下一主题
正在读取,请等待...
查询本论坛内
近一天
近三天
近一周
近一月
近三月
近半年
近一年
所有
回复超过
的热门帖子
标题
内容
提交时自动拷贝以上内容到剪贴板 Ctrl+V可取出;提问题前先查询
标签列表
使用帮助
解惑之道在
J道
,打造中国最具影响力的的软件架构社区
推荐FireFox或Chrome快速浏览本站
OpenSource
JIVEJDON
Powered by
JdonFramework
Code © 2002-10
jdon.com
anti spam