在线248人
首页
主题表
培训咨询
标签
查搜
注册
登陆
用户
自动登陆
密码
新用户注册
忘记密码?
首页
»
论坛
»
语言平台技术讨论
上一主题
在刚开始学java的时候,所有程序入口代码都在Main函数里,点击运行,查看结果,结束。 之后接触另一类程序,程序启动后需要点击“停止”才能停止,比如应用服务器,还有SWING等桌面应用。 很想知道这..
下一主题
1,请问使用String str = new String("aaa");时,常量池中如果没有"aaa"的话会在编译时在常量池创建一个"aaa"吗? 2,请问如果一个类中有一个String类型的属性,..
Go
共有
4
回复(
1
页) 阅读184次
前往下页:
xmuzyu
发表文章: 425
注册时间: 2007年03月26日
悄悄话
个人博客
当前离线
16人关注
如何在EJB3.0架构下进行DDD实践。
2008年08月15日 19:47
ejb3
DDD领域驱动设计
顶一下
如何在
EJB
3.O架构下来进行
DDD
实践,一般在项目中,我是这样做的:
表现层Action-->BusinessDelegate(业务委托)-->服务门面(session bean)-->domain object.
站在
DDD
的角度来说,应用层的服务可以通过有态或者无态的session bean来实现,在
EJB
3.0中提供了持久化服务,我们可以通过EntityManager对实体进行CRUD操作,现在的问题就是如何封装EntityManager。在Respository中封装可以吗?具体如何封装?如果采用JTA事务,无论会是CMT还是BMT,则Respository必然于
EJB
3.0架构产生了耦合,也就降低了领域模型的复用性。我们怎么样封装EntityManager才能做到即可以使用容器提供的持久化服务,又符合
DDD
实践要求呢?
Hibernate是JPA的超集,所以我们可以不用容器提供的持久化服务,自己通过Hibernate来实现,这样以来就容易通过Hibernate来实现Respository了,但是我觉得用EntityManager满方便的,所以想将EntityManager独立的封装起来,然后Resposity通过EntityManager和具体的数据库打交道,但是这样有个问题,如果采用JTA事务,那么Respostory也要通过
EJB
的组件来实现了,所以才有此种疑问,还请各位给点意见,多谢了。
[该贴被xmuzyu于2008-08-15 20:17修改过]
zhengguo07q
发表文章:
注册时间: 2008年03月19日
悄悄话
个人博客
当前离线
re:如何在EJB3.0架构下进行DDD实践。
2008年08月16日 11:45
顶一下
容器提供了分布式
事务
处理功能。如果
集群
的话 用cmt吧
用
EJB
不能说耦合吧? 那个是标准。
如果这都算的话 那你就别用任何java代码了
(:
xmuzyu
发表文章: 425
注册时间: 2007年03月26日
悄悄话
个人博客
当前离线
16人关注
re:如何在EJB3.0架构下进行DDD实践。
2008年08月16日 13:59
顶一下
EJB确实是标准,但是还有其他的替代方案啊。我的意思是能在
EJB
和其他替代方案中平滑移植。如果仓库需要EntityManager提供持久化服务,那么势必造成了领域模型与具体的架构(比如
EJB
)产生了耦合。而领域模型应该是与具体的架构无关的。还请各位指点。
banq
发表文章: 11308
注册时间: 2002年08月03日
悄悄话
个人博客
当前离线
72人关注
回复:re:如何在EJB3.0架构下进行DDD实践。
2008年08月18日 10:20
顶一下
基本上可以认为EntityManager就是Repository+Factory
当然,EntityManager也可以脱离Session Bean测试和使用。
>领域模型应该是与具体的架构无关的
分析时是这样,但是落地实现时,其运行环境肯定和具体架构有关的。只要其对象内部没有和架构有关即可,领域模型是鱼,架构是水,事务也属于水环境。
[该贴被banq于2008-08-18 11:04修改过]
xmuzyu
发表文章: 425
注册时间: 2007年03月26日
悄悄话
个人博客
当前离线
16人关注
re:如何在EJB3.0架构下进行DDD实践。
2008年08月18日 11:04
顶一下
多谢banq老师指点。分析和设计确实还存在一定的不匹配之处,要想实现分析和设计的完美过渡还是需要经验积累的。
ejb3(72)
DDD领域驱动设计(211)
共有
4
回复(
1
页)
Go
上一主题
返回本主题
返回主题列表
返回页首
下一主题
正在读取,请等待...
查询本论坛内
近一天
近三天
近一周
近一月
近三月
近半年
近一年
所有
回复超过
的热门帖子
标题
内容
提交时自动拷贝以上内容到剪贴板 Ctrl+V可取出;提问题前先查询
标签列表
使用帮助
解惑之道在
J道
,打造中国最具影响力的的软件架构社区
推荐FireFox或Chrome快速浏览本站
OpenSource
JIVEJDON
Powered by
JdonFramework
Code © 2002-10
jdon.com
anti spam