2007-03-08
webwork in spring
本文主要讲解webwork与spring的集成.
有人说有了webwork就没有必要和spring集成.
也有人说webwork和spring集成起来功能更加强大.
本人同意上述两个观点,本文觉得webwork没有必须要和spring集成,当然我这里仅指springMVC,webwork本身就是一个很好的MVC实现.而webwork可以和spring除SpringMVC以外其的组件集成,像spring的持久层组件.更多的本人也不敢发表言论,大家如果感兴趣可以到网上找找相关的资料.
提示:为了减少视频的录制时间,减少上传文件的空间.本文也是在上几个视频的基础上进行改动.所以在阅读本文之前请先参考上几个视频.可以在本博客上直接下载,webwork国际化这节.
Webwork集成spring
1. 修改 web.xml,为 Web 应用增加相应的 Spring ContextLoaderListener
- xml version="1.0" encoding="UTF-8"?>
- <web-app version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee"
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
- xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee
- http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
- <servlet>
- <servlet-name>webworkservlet-name>
- <servlet-class>
- com.opensymphony.webwork.dispatcher.ServletDispatcher
- servlet-class>
- servlet>
- <servlet-mapping>
- <servlet-name>webworkservlet-name>
- <url-pattern>*.actionurl-pattern>
- servlet-mapping>
- <listener>
- <listener-class>
- org.springframework.web.context.ContextLoaderListener
- listener-class>
- listener>
- web-app>
java 代码
- package com.lyx.service;
- import com.lyx.bo.User;
- public interface IUserService {
- public boolean isValidUser(User user);
- }
- }
java 代码
- package com.lyx.service;
- import com.lyx.bo.User;
- public class UserService implements IUserService {
- public boolean isValidUser(User user) {
- if (user.getUserName().equals("lyx") && user.getUserPwd().equals("lyx"))
- return true;
- else
- return false;
- }
- }
4.修改xwork.xml配置文件
xml 代码
- >
- <xwork>
- <include file="webwork-default.xml" />
- <package name="action" extends="webwork-default">
- <action name="login" class="login">
- <result name="success" type="dispatcher">
- <param name="location">/success.jspparam>
- result>
- <result name="error" type="dispatcher">
- <param name="location">/error.jspparam>
- result>
- <result name="input" type="dispatcher">
- <param name="location">/index.jspparam>
- result>
- <interceptor-ref name="model-driven" />
- <interceptor-ref name="params" />
- <interceptor-ref name="validationWorkflowStack" />
- action>
- package>
- xwork>
5) 添加 spring 框架到项目中
修改 applicationContext.xml 文件,加入 UserServiceImpl 的配置信息
xml 代码
- xml version="1.0" encoding="UTF-8"?>
- >
- <beans>
- <bean id="userService" class="com.lyx.service.UserService" singleton="false"/>
- <bean id="login" class="com.lyx.web.action.LoginAction" singleton="false" >
- <property name="userService">
- <ref bean="userService"/>
- property>
- bean>
- beans>
注意:这里的红色字体login一定要和xwork配置文件中的login一样.
6) 修改 Action
java 代码
- LoginAction.java
- package com.lyx.web.action;
- import com.opensymphony.xwork.Action;
- import com.opensymphony.xwork.ActionSupport;
- import com.opensymphony.xwork.ModelDriven;
- import com.test.services.IUserService;
- public class LoginAction extends ActionSupport implements Action,ModelDriven {
- private User user = new User();
- private IUserService userService;
- public User getUser() {
- return user;
- }
- public String execute() throws Exception {
- if (userService.isValidUser(user))
- return this.SUCCESS;
- else
- return this.ERROR;
- }
- public Object getModel() {
- return user;
- }
- public void setUserService(IUserService userService) {
- this.userService = userService;
- }
- }
发表评论
- 浏览: 165062 次
- 性别:

- 来自: 大连

- 详细资料
搜索本博客
最近加入圈子
最新评论
-
下载公告
老师您辛苦了~~
-- by cfqsky -
Model-Driven(模型驱动) ...
太感谢了,特意注册个用户来献上敬意
-- by lere -
webwork初体验
非常感谢您无私的奉献精神~期待您更多作品~谢谢!
-- by timlee16888 -
struts1.2之token解决重 ...
好东西 我就喜欢视频 比那些枯燥的文字好理解多了 好有意思
-- by df_1125 -
struts2初体验(附视频)
谢谢了!!!
-- by A19850925






评论排行榜