WebWork是一个强大的基于Web的MVC框架, 它构建在一个command模式的框架 XWorkXWork 之上. WebWork真正的力量在于它内在蕴涵的简单和协作的理念. 使用WebWork将有助于最小化代码,并允许开发人员更多的关注业务逻辑(business logic)和建模(modeling), 而不是关注构建基于web的应用程序必需的铅管系统(plumbing).阅读全文>
发表于 @ 2007年10月30日 12:40:00|评论(loading...)|编辑|收藏
Action 类:
• Struts1要求Action类继承一个抽象基类。Struts1的一个普遍问题是使用抽象类编程而不是接口。
• Struts 2 Action类可以实现一个Action接口,也可实现其他接口,使可选和定制的服务成为可能。Struts2提供一个ActionSupport基类去实现 常用的接口。Action接口不是必须的,任何有execute标识的POJO对象都可以用作Struts2的Action对象。
阅读全文>
发表于 @ 2007年10月20日 11:28:00|评论(loading...)|编辑|收藏
一、Struts2配置文件
Struts2相关的配置文件有web.xml,struts.xml,struts.properties,
struts-default.xml,velocity.properties,struts-default.vm。其中web.xml,struts.xml是必须的,其它的配置文件可选择。它们在web应用中的功能如下:
web.xml:包含所有必须的框架组件的web部署描述符。
Struts.xml:配置包含result/view类型、action映射、拦截器等的Struts2的主要配置文件。
Struts.properties:配置struts2的框架属性。
Struts-default.xml:在文件在struts-action-x.x.jar中,该文件是应该被包含在struts.xml中的缺省配置。
Welocity.properties:重写了velocity的配置文件。
Struts-default.vm:相对于velocity的缺省配置。阅读全文>
发表于 @ 2007年10月20日 11:25:00|评论(loading...)|编辑|收藏
为了访问HttpSession实例,Struts 2提供了一个ActionContext类,该类提供了一个getSession的方法,但该方法的返回值类型并不是HttpSession,而是Map。这又是怎么回事呢?实际上,这与Struts 2的设计哲学有关,Struts 2为了简化Action类的测试,将Action类与Servlet API完全分离,因此getSession方法的返回值类型是Map,而不是HttpSession。
虽然ActionContext的getSession返回的不是HttpSession对象,但Struts 2的系列拦截器会负责该Session和HttpSession之间的转换。 阅读全文>
发表于 @ 2007年10月19日 15:05:00|评论(loading...)|编辑|收藏
struts.xml文件应该放在classes路径下,该文件主要放置Struts 2的Action定义。定义Struts 2 Action时,除了需要指定该Action的实现类外,还需要定义Action处理结果和资源之间的映射关系。阅读全文>
发表于 @ 2007年10月19日 14:30:00|评论(loading...)|编辑|收藏
Struts 2 Action默认拦截所有后缀为.action的请求。因此,如果我们需要将某个表单提交给Struts 2 Action处理,则应该将该表单的action属性设置为*.action的格式。对于Action中的属性参数,表面上看起来,该Action的属性只提供了对应的setter和getter方法,很难理解请求参数在什么时候赋值给该Action的属性,事实上,因为Struts 2的拦截器机制,它们负责解析用户的请求参数,并将请求参数赋值给Action对应的属性。所以,在Action中只需要调用该Action中的属性既可以了,而不需要使用Request来获取。阅读全文>
发表于 @ 2007年10月19日 14:09:00|评论(loading...)|编辑|收藏