Spring_1.2.7 与 webwork_2.2.2集成
来源:互联网 发布:光纤网络交换机 编辑:程序博客网 时间:2024/05/02 00:00
Spring_
1. 到webwork官网下载webwork-
2. 编辑webwork_
图1 目录结构
3. web.xml配置文件说明与举例,web.xml配置文件在WEB-INF目录下,是所有web工程都必须的配置文件,使用webwork框架,需要在改配置文件里面注册webwork框架插件来处理web请求,举例如下:
<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE web-app
PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
"http://java.sun.com/dtd/web-app_2_3.dtd">
<web-app>
<display-name>Test v2.0</display-name>
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>/WEB-INF/classes/spring/applicationContext.xml</param-value>
</context-param>
<filter>
<filter-name>Encoding</filter-name>
<filter-class>com.jetsum.cantus.core.servlet.SetCharacterEncodingFilter</filter-class>
<init-param>
<param-name>encoding</param-name>
<param-value>GBK</param-value>
</init-param>
</filter>
<!-- spring -->
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>
<!-- This needs to be after Spring ContextLoaderListener -->
<listener>
<listener-class>com.opensymphony.webwork.spring.lifecycle.SpringExternalReferenceResolverSetupListener</listener-class>
</listener>
<!-- spring -->
<listener>
<listener-class>com.opensymphony.webwork.spring.WebWorkSpringObjectFactory</listener-class>
</listener>
<!-- WebWork -->
<servlet>
<servlet-name>webwork</servlet-name>
<servlet-class>com.opensymphony.webwork.dispatcher.ServletDispatcher</servlet-class>
</servlet>
<!-- WebWork -->
<servlet-mapping>
<servlet-name>webwork</servlet-name>
<url-pattern>*.action</url-pattern>
</servlet-mapping>
<welcome-file-list>
<welcome-file>index.jsp</welcome-file>
</welcome-file-list>
<taglib>
<taglib-uri>webwork</taglib-uri>
<taglib-location>/WEB-INF/webwork.tld</taglib-location>
</taglib>
</web-app>
4. xwrok.xml配置说明与举例,该文件在类的根目录下,在web工程中应放在src目录下,工程编译后就会导入class目录下,即类根目录.其作用:webwork插件,在此也可以称做web请求处理分派器,分派器会根据该配置文件将web请求交给相应的Action处理,举例如下:
<!DOCTYPE xwork PUBLIC "-//OpenSymphony Group//XWork 1.0//EN" "http://www.opensymphony.com/xwork/xwork-1.0.dtd">
<xwork>
<include file="webwork-default.xml" />
<package name="default" extends="webwork-default">
<interceptors>
<interceptor name="externalReferences" class="com.opensymphony.xwork.interceptor.ExternalReferencesInterceptor" />
<interceptor name="catchException" class="com.jetsum.cantus.core.exception.CatchExceptionInterceptor" />
<interceptor-stack name="standard-interceptors">
<interceptor-ref name="externalReferences" />
<interceptor-ref name="prepare" />
<interceptor-ref name="static-params" />
<interceptor-ref name="params" />
<interceptor-ref name="conversionError" />
</interceptor-stack>
<interceptor-stack name="stand-upload-interceptors">
<interceptor-ref name="externalReferences" />
<interceptor-ref name="prepare" />
<interceptor-ref name="fileUpload" />
<interceptor-ref name="static-params" />
<interceptor-ref name="params" />
<interceptor-ref name="conversionError" />
</interceptor-stack>
</interceptors>
<default-interceptor-ref name="standard-interceptors" />
</package>
<include file="login.xml" />
</xwork>
5. webwork.properties配置说明与举例 ,此配置文件主要向webwork框架提供一些参数,如编码等,更多信息要查找相关文档,举例如下:
webwork.locale=zh_CN
webwork.i18n.encoding=GBK
6. login.xml 配置文件说明与举例,专门用来配置LoginAction,该配置文件会被包含入xwork.xml配置文件,这样才能生效,举例如下:
<!DOCTYPE xwork PUBLIC "-//OpenSymphony Group//XWork 1.0//EN" "http://www.opensymphony.com/xwork/xwork-1.0.dtd">
<xwork>
<package name="logins" extends="default" externalReferenceResolver="com.opensymphony.xwork.spring.SpringExternalReferenceResolver">
<!— 存储帐户信息 -->
<action name="login" class="com.jetsum.test.action.LoginAction">
<result name="error" type="dispatcher">
<param name="location">index.jsp</param>
</result>
<result name="login" type="dispatcher">
<param name="location">index.jsp</param>
</result>
<result name="waibu" type="dispatcher">
<param name="location">index.jsp</param>
</result>
</action>
</package>
</xwork>
注意:externalReferenceResolver="com.opensymphony.xwork.spring.SpringExternalReferenceResolver" 告知spring框架在需要时配置action内实体之间的映射关系,但是到目前为止还没有利用这种依赖,所以applicationContent.xml中也没有相应的依赖配置
7. applicationContext.xml 配置文件说明与举例,专门用来配置bean之间的依赖关系,在需要的时候进行动态的依赖注射,举例如下:
<?xml version="1.0" encoding="GBK"?>
<!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/spring-beans.dtd">
<beans></beans>
8.Action类举例
RegisterAction类 源码如下:
package com.jetsum.test.action;
import com.jetsum.test.entity.User;
import com.opensymphony.xwork.ActionSupport;
public class LoginAction extends ActionSupport {
private User user = new User();
private String name;
private String password;
private String statu;
public String getStatu() {
return statu;
}
public void setStatu(String statu) {
this.statu = statu;
}
public String login() {
System.out.println("my name is " + name);
System.out.println("my password is " + password);
user.setName(name);
user.setPassword(password);
this.statu = "y";
return "error";
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
}
User 类源码如下:
package com.jetsum.test.entity;
public class User {
private int id;
private String name;
private String password;
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
}
9. index.jsp举例
<%@ page language="java" contentType="text/html; charset=gbk" pageEncoding="gb2312"%>
<%@taglib prefix="ww" uri="webwork"%>
<!DOCTYPE HTML PUBLIC "-//W
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title></title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
</head>
<body>
<form name="form1" method="post" action="login!login.action">
<input type="text" name="name" id="name" size="19"/><ww:if test='"n".equals(statu)'> <font color="red" size="1">登录名或密码错误</font></ww:if><br><br>
<input name="password" id="password" type="password" /><br><br>
<input type="submit" class="btn" value="登录"/>
</form>
</body>
</html>
注意:action="login!login.action"属性,!前面的login表示action名,后面的login表示action需要执行的方法,默认方法为execute方法,在这里没有用到webwork的验证框架,但是用到了webwork的标签来实现验证
- Spring_1.2.7 与 webwork_2.2.2集成
- Spring_1.2.7 、 webwork_2.2.2及hibernate3的集成
- Maven无法下载mybatis-spring_1.2.2版本的问题
- Webwork_2.1.7 配置说明
- 模式集成与语义集成
- Apache CXF 2.7与Spring 3集成
- Apache CXF 2.7与Spring 3集成
- php5 与 Apache 2.2 的集成
- 集成与构建指南
- Tomcat 与 IIS 集成
- PDM与企业信息集成
- Hibernate与Lucene集成
- Tomcat与Derby集成
- Tapestry3 与 Spring 集成
- Hibernate3与WebLogic8集成
- Eclipse与Derby集成
- k2与2003集成
- WebSphere 集成与应用软件
- 改写游戏规则 — Windows Mobile, Google Phone, iPhone, 山寨手机芯片商MTK的殊途同归
- Jazz 快速入门
- 算法
- directshow使用strbase出错
- VM安装WinXp:
- Spring_1.2.7 与 webwork_2.2.2集成
- 080704
- 图像相似度检测之直方图相交
- 編程語言的擇決!
- 图片测试
- “HtmlSelect”不能有类型为“LiteralControl”的子级
- ITIL与SOA是两个不同层面概念
- postgresql函数存储过程实现数据批量插入
- sql备份语句总结