Struts中的Form属于MVC的哪一层?

richardsa 2006-06-09 11:01:01
有的书说Form属于模型层,被这搞混淆了
特来搞清楚Struts中各部分属于MVC中的哪一层
...全文
407 14 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
14 条回复
切换为时间正序
请发表友善的回复…
发表回复
rickhunterchen 2006-06-09
  • 打赏
  • 举报
回复
struts是个框架技术而已。
module对应formbean。
controller对应action。
view对应jsp。
晨星 2006-06-09
  • 打赏
  • 举报
回复
是Medel吧。
Controller基本都被struts框架实现了。
View是程序员利用structs的标签库实现。

不过,按照《Design Patterns》一书中对“Controller”一词的解释,似乎又不完全准确。
richardsa 2006-06-09
  • 打赏
  • 举报
回复
刚接触Struts这类框架和设计模式,
编写的时候还没有做到把业务逻辑分离到专门的formbean这一步
所以会产生这样的疑问,不过在各位帮助下解决了问题又学到的知识,感谢大家
richardsa 2006-06-09
  • 打赏
  • 举报
回复
多谢楼上的
我做完了设计也不清楚Struts如何与MVC中的三层对应
之所以问是为了答辩的时候能说的清楚,没办法,说不清楚就不好办了
zeq258 2006-06-09
  • 打赏
  • 举报
回复
http://community.csdn.net/Expert/topic/4771/4771909.xml?temp=.6895868
这个帖子,对这个问题,讨论了很多!
很多朋友都谈了自己的看法,楼主可以参考下!

其实,分层是为了减小你的程序,各个层面之间的偶合。
如果你能解决偶合,就没有必要对form 属于哪个层次而如此。
zeq258 2006-06-09
  • 打赏
  • 举报
回复
jsp --- form --- VO --- action(Control) --- PO
\ /
\ /
调用业务层对象\ /作为参数传到业务层
\ /
\ /
Model
|
|
|
调用相应的持久化方法,把PO作为参数


-------------------------------------
jsp --- form --- VO
这三者,我们都可以理解为是展示层的东西,
action是控制层,
Model 是业务层,业务层可能要调用持久层的一些方法。

在展示层,我们只能够操作 VO ,
在业务和持久层,我们只能操作 PO ,
在action 中,我们可以对 两者之间进行转换,
这样就达到了分层的目的,而且,在页面不会出现持久化对象,在业务层也不会出现值对象。

好的分层,可以是各个层次之间的偶合度很小,当一个部分发生改变的时候,只需要改变相应层次之间的映射,而不必改变其他的层。

syhan 2006-06-09
  • 打赏
  • 举报
回复
model层,对数据的获取
CristinNa 2006-06-09
  • 打赏
  • 举报
回复
struts是个框架技术而已。
module对应formbean。
controller对应action。
view对应jsp。
rickhunterchen 2006-06-09
  • 打赏
  • 举报
回复
不明白Lz怎么会认为action为module层。难道ActionServlet和action有区别吗?

很多时候不要去钻这样的牛角尖,因为这样没有用处。


AndrewCSDN 2006-06-09
  • 打赏
  • 举报
回复
[但Action中也可以实现业务逻辑] <----- 虽然可以但是并不是说就是对的。
业务逻辑应该和Action分开。
AndrewCSDN 2006-06-09
  • 打赏
  • 举报
回复
quote[ Note: While ActionForm beans often have properties that correspond to properties in your Model beans, the form beans themselves should be considered a Controller component. As such, they are able to transfer data between the Model and View layers.]

Reference: http://struts.apache.org/struts-action/userGuide/building_model.html#actionform

应该属于Controller
MBlue 2006-06-09
  • 打赏
  • 举报
回复
module
richardsa 2006-06-09
  • 打赏
  • 举报
回复
虽然Struts建议把Action和业务逻辑分开,但Action中也可以实现业务逻辑
我觉得ActionServlet和ActionMapping才是Controller
Action属于Model
JSP对应View

之所以问这个问题,是明天就答辩了,怕问到了答不上来。
aChinese 2006-06-09
  • 打赏
  • 举报
回复
form是DTO 数据传输对象

67,550

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧