该帖已经被评为精华帖
|
|
---|---|
作者 | 正文 |
发表时间:2005-03-01
差沙 写道 yhc0125 写道 shoopman 写道 jeffrey_he 写道 robbin的例子中没有提到列表的情况啊,假如是一个用户列表的页面呢?我通过Business Bean查询得到的是一个List或Iterator呢?是否也要把其中每个元素转换为formbean来显示?
嗯,对这个问题,我也正迷惑着! 个人认为也应该转换,在action里做一下就可以了,需要自己扩展一下beanutil 看来真的有不少人在迷惑这个问题,我也是,不知道有没有人已经做好扩展的beanutil了,当然,要的是效率上最高的,要是一个一个循环,那就没有什么意义了。 为了严格意义上的分层,做一个JSP层专用VO,姑且成为ViewVO,然后在ViewVO和原业务层VO(为区别起见称为BizVO)之间互相转来转去,不知道这样是否符合robbin的意思。 |
|
返回顶楼 | |
发表时间:2005-03-11
比如查询会员表,查询的时候一般有两种结果画面
一个是会员详细,这种情况下可以用在Action里根据PO来构造MemberFormBean后传到JSP里来表示数据 另外一个是会员一览,也是在Action里转换成MemberFormBean的Collection后传到JSP里来表示吗? 如果是的话有一个问题,MemberFormBean构造的时候主要是为了用户注册的时候提交用户信息表单而构造的,不需要用户的注册时间等字段。但是在会员一览的画面里需要显示用户注册时间。这个时候怎么办? 我以前的理解是表单提交数据的时候会用到FormBean, 表示的时候不用FormBean,而是用VO或者简单的系统里直接用PO。 |
|
返回顶楼 | |
发表时间:2005-08-30
接触到hibenate是从进入这个论坛开始的
特别是看到robbin的 这篇帖子,受益非浅 非常感谢robbin 也非常感谢大家。 |
|
返回顶楼 | |
发表时间:2005-08-31
很好的帖子啊!关于从数据库里取数据集合的问题,本人倒有个想法,如果hibernate提供个回调的机制会更好,就是说在从数据库中查询到PO对象时,回调让用户自己根据PO构造相应的VO,这样是不是在持久层就解决了PO到VO转换问题,免得PO被传来传去的,不过,效率问题,呵呵就值得商榷了!
|
|
返回顶楼 | |
发表时间:2005-09-02
stevendu 写道 我是这么考虑的,其实Action才是真正的Controller, ActionServlet只不过是一个接收器而已,最终的分发是Action完成的。
看看struts源码吧 总指挥就是ActionServlet |
|
返回顶楼 | |
发表时间:2005-09-02
ygxdha 写道 denfard 写道 引用 那么在一个完整的J2EE系统中应该如何进行合理的设计呢?
JSP(View) ---> ActionFormBean(Module) ---> Action(Control) 记得在一个文档里的讲解,说Action和ActionForm都是Model,ActionServlet才是Control。 如果你的理解是正确的话,为什么有人说把ActionForm和Action分开违反了OO的思想?似乎在JSF里边就没有这么做了。 能解释一下你的理解吗? 记得在一个文档里的讲解,说Action和ActionForm都是Model,ActionServlet才是Control。 的确是这样划分mvc的,不过robbin估计是笔误吧。 而且,可以不把actionForm划分到m层里面,你画一下,三层之间的uml图,会发现actionForm只能数据的容器,在三层之间传递数据。具体将之放到那一层并不好。 孙卫琴的那本书把它划为view 其实不一定非要是哪层里面的 我感觉就是个层间传输的对象而已 还请高手来指点迷津啊~~~ |
|
返回顶楼 | |
发表时间:2005-09-09
看具体需要选择具体的工具了
牛刀杀鸡还是有点不合适的 |
|
返回顶楼 | |
发表时间:2005-09-13
获益非浅,顺便问问用个delegate怎样?
|
|
返回顶楼 | |
发表时间:2005-10-18
如果是做三层的结构,这些规则是必须的。如果你的项目的表现层是别人来做,那你就不会有这个问题了(你会自然的遵守)。同样的含有数据的校验,前台作哪些工作,后台作哪些工作。都要有一个明确的定义,不然系统地维护就麻烦了。如果为了,赶进度而抛弃了规则,只会影响项目的速度。这一点在我做过的项目中,有很深刻的体会。
|
|
返回顶楼 | |
发表时间:2006-01-15
robbin 写道 JSP(View) ---> ActionFormBean(Module) ---> Action(Control) 我觉得这样标识mvc会造成误解的,mvc是前后端解耦的中介,对于sping+hibernate+struts这样的应用,strtus就起到了mvc框架的作用。 我觉得: V:就是web页面,视图 C:就是struts的servlet,action m:就是sping往后的内容了 mvc的概念还是比较宽泛的,虽然实际的系统实现不会那么精确,但是宏观看来是符合mvc的。 |
|
返回顶楼 | |