经典美文3

Hibernate中PO有三种状态:
1.未被持久化的VO,此时就是一个内存对象VO,由JVM管理生命周期。
2.已被持久化的PO,并且在Session生命周期内,此时映射数据库连接,由数据库管理生命周期。
3.曾被持久化过,但现在和Session已经托管(detached)了,以VO的身份在运行。它还可以进入另一个Session,继续PO状态管理。
需要注意的是, PO最好只在持久层使用,如果脱离持久层到处使用,会给Hibernate带来不小的PO对象维护开销。
1   JSP(View) ---> ActionFormBean(Module) ---> Action(Control)
ActionFormBean是Web层的数据表示,它和HTML页面Form对应, 只要Web页面的操作流程发生改变,它就要相应的进行修改,它不应该也不能被传递到业务层和持久层,否则一旦页面修改,会一直牵连到业务层和持久层的大面 积的代码进行修改,对于软件的可维护性和可扩展性而言,是一个灾难,Action就是他的边界,到此为止!
2   Action(Web Control) ---> Business Bean ---> DAO ---> ORM --->DB
而PO则是业务层和持久层的数据表示,它在业务层和持久层之间进行流动,他不应该也不能被传递到 Web层的View中去,而ActionServlet就是他的边界,到此为止!

猜你喜欢

转载自sunxuecheng.iteye.com/blog/1178916