想知道Struts中,是如何实现"view"部份的,请给个例子,谢谢

WorldCreater 2003-07-13 09:24:22
作为一个MVC的框架,Struts对Model、View和Controller都提供了对应的实现组件,对应上面的UML图,分别进行介绍,并且看看它们是如何结合在一起的。

Controller:控制器的作用是从客户端接受请求,并且选择执行相应的业务逻辑,然后把响应结果送回到客户端。在Struts中Controller功能由图中ActionServlet和ActionMapping对象构成:核心是一个Servlet类型的对象ActionServlet,它用来接受客户端的请求。ActionServlet包括一组基于配置的ActionMapping对象,每个ActionMapping对象实现了一个请求到一个具体的Model部分中Action处理器对象之间的映射。
Model: MVC系统中的Model部分从概念上可以分为两类――系统的内部状态,和改变系统状态的动作。Struts为Model部分提供了Action和ActionForm对象:所有的Action处理器对象都是开发者从Struts的Action类派生的子类。Action处理器对象封装了具体的处理逻辑,调用业务逻辑模块,并且把响应提交到合适的View组件以产生响应。Struts提供的ActionForm组件对象,它可以通过定义属性描述客户端表单数据。开发者可以从它派生子类对象,利用它和Struts提供的自定义标记库结合可以实现对客户端的表单数据的良好封装和支持,Action处理器对象可以直接对它进行读写,而不再需要和request、response对象进行数据交互。通过ActionForm组件对象实现了对View和Model之间交互的支持。Struts通常建议使用一组JavaBean表示系统的内部状态,根据系统的复杂度也可以使用像Entity EJB 和 Session EJB等组件来实现系统状态。Struts建议在实现时把"做什么"(Action)和"如何做"(业务逻辑)分离。这样可以实现业务逻辑的重用。
View:Struts应用中的View部分是通过JSP技术实现的。Struts提供了自定义的标记库可以使用,通过这些自定义标记可以非常好地和系统的Model部分交互,通过使用这些自定义标记创建的JSP表单,可以实现和Model部分中的ActionForm的映射,完成对用户数据的封装,同时这些自定义标记还提供了像模板定制等多种显示功能。

------------------------------------------
想知道Struts中,是如何实现"view"部份的,它不是在action中写System.out.println()这样的语句。
如果我在action里查到了一个数据集,那在struts中,我应怎样将数据集传到jsp视图呢?
请给个例子,谢谢


...全文
44 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
WorldCreater 2003-07-14
  • 打赏
  • 举报
回复
我比较弱点,大侠能不能再写仔细点?谢谢
你的意思是不是把整个数据集作为一个变量存到request里去,然后,把页面重定向,再在页面里取出数据集?
caiqm 2003-07-14
  • 打赏
  • 举报
回复
request.setAttribute
or
Session.setAttribute
基本上就这么做的
wwwtom 2003-07-14
  • 打赏
  • 举报
回复
iterator
WorldCreater 2003-07-14
  • 打赏
  • 举报
回复
怎么做啊?不用session

比如我检索数据库返回了一个结果集 RecordSet
我总不能把它放到 session去吧
pleonheart 2003-07-14
  • 打赏
  • 举报
回复
setAttribute,getAttribute或者用Session

67,538

社区成员

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

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