`
xiaofan_0204
  • 浏览: 124993 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

基于struts2的全局自定义类型转换器

 
阅读更多
实体bean的
package com.bean;

public class User {
	private  :arrow: String username;
	
	private String password;

	public String getUsername() {
		return username;
	}

	public void setUsername(String username) {
		this.username = username;
	}

	public String getPassword() {
		return password;
	}

	public void setPassword(String password) {
		this.password = password;
	}
}


struts2.xml配置文件
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE struts PUBLIC
    "-//Apache Software Foundation//DTD Struts Configuration 2.0//EN"
    "http://struts.apache.org/dtds/struts-2.0.dtd">

<struts>
    <constant name="struts.enable.DynamicMethodInvocation" value="true" />
    <constant name="struts.devMode" value="true" />
    
    <package name="default" namespace="/main" extends="struts-default">
        <action name="struts2Index_*" class="com.struts2.action.Struts2ConverterAction" method="{1}" >
        	<result type="dispatcher">
        		/index.jsp
        	</result>
        </action>
    </package>
</struts>


控制器actin
package com.struts2.action;

import org.apache.log4j.Logger;

import com.bean.User;

public class Struts2ConverterAction {
	
	private static Logger logger = Logger.getLogger(Struts2ConverterAction.class);
	
	private User user;
	
	public String loginUser(){
		System.out.println(user.getUsername() + ":" + user.getPassword());
		return "success";
	}
	
	public User getUser() {
		return user;
	}
	
	public void setUser(User user) {
		this.user = user;
	}
	
}


注册器
package com.struts2.strutsconverter;

import java.util.Map;

import org.apache.struts2.util.StrutsTypeConverter;

import com.bean.User;

public class Struts2Converter extends StrutsTypeConverter {

	@Override
	public Object convertFromString(Map context, String[] values, Class toClass) {
		User user = new User();
		String[] strValue = values[0].split(",");
		user.setUsername(strValue[0]);
		user.setPassword(strValue[1]);
		return user;
	}

	@Override
	public String convertToString(Map context, Object o) {
		User user = (User)o;
		return user.getUsername() + "," + user.getPassword();
	}
	
}



试图jsp
<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
  </head>
  
  <body>
    <form action="/StrutsTypeConverter/main/struts2Index_loginUser" method="post">
    	<input type="text" name="user" value="${user.username },${user.password }" />
    	<input type="submit" value="提交" />
    </form>
  </body>
</html>


最后配置注册器,在classpath目录下配置如下配置文件,文件名为固定格式:
xwork-conversion.properties
具体配置为:
com.bean.User=com.struts2.strutsconverter.Struts2Converter
分享到:
评论

相关推荐

    struts2全局转换的问题

    测试源代码 博文链接:https://gyj129129.iteye.com/blog/225216

    Struts2类型转换与输入校验 .zip

    (1) 编写一个自定义类型转换器,并基于应用程序进行全局配置,实现字符串参数与颜色值之间的转换,并将颜色值应用于视图当中。 (2) 根据实验四的图书管理系统,扩展图书新增功能,要求对新增页面表单中的每个...

    实验4 Struts2的类型转换与OGNL表达式语言.doc

    1、 理解Struts2的类型转换类型 2、 理解局部类型转换器与全局类型转换器的区别 3、 掌握Struts2的自定义类型转换 4、 理解OGNL表达式语言

    struts2 详解文档

    自定义类型转换器 全局类型转换器 访问或添加几个属性 文件上传 多文件上传 自定义拦截器 对Action中所有方法进行输入校验 对Action指定方法进行校验 输入校验的流程 基于XML配置方式实现对action的所有...

    Struts2 in action中文版

    5.4.3 配置框架使用自定义转换器 103 5.5 小结 106 第三部分 构建视图——标签和结果 第6章 构建视图——标签 108 6.1 入门 108 6.1.1 ActionContext和OGNL 109 6.1.2 虚拟对象ValueStack 111 6.2 Struts 2标签概要...

    struts2讲义_吴峻申

    4.3 在Struts2中配置自定义的拦截器 53 4.3.1 扩展拦截器接口的自定义拦截器配置 54 4.3.2 继承抽象拦截器的自定义拦截器配置 56 4.3.3 继承方法拦截器的自定义拦截器配置 58 4.4 Struts2文件上传拦截器应用 61 ...

    Struts2入门教程(全新完整版)

    2.自定义拦截器 28 方式一,实现Interceptor接口。 28 方式二、继承AbstractInterceptor抽象类 29 方式三、继承MethodFilterInteceptor类 30 3.使用来MethodFilterInterceptor灵活拦截 32 4.使用默认的execAndWait...

    Struts2 学习笔记

    01 Struts2-Action 5 一、 Struts作用: 5 二、 搭建Struts2的运行环境: 5 三、 Namespace 6 四、 标签 6 五、 Action 6 六、 路径问题的说明 8 ...09 自定义拦截器 38 10 类型转换 38 Struts2总结 39

    Struts2帮助```````

    01 Struts2-Action 5 一、 Struts作用: 5 二、 搭建Struts2的运行环境: 5 三、 Namespace 6 四、 标签 6 五、 Action 6 六、 路径问题的说明 8 ...09 自定义拦截器 38 10 类型转换 38 Struts2总结 39

    TestT75L71.zip_Jsp/Servlet_Java_

    Struts2_自定义转换器和拦截器 个分别讲解了局部的和全局的

    经典JAVA.EE企业应用实战.基于WEBLOGIC_JBOSS的JSF_EJB3_JPA整合开发.pdf

    3.4.3 使用自定义转换器 159 3.4.4 绑定到Bean属性的转换器 159 3.5 使用验证器进行输入校验 161 3.5.1 输入校验概述 161 3.5.2 JSF内置校验器 162 3.5.3 校验失败后的错误消息 163 3.5.4 必填校验器 165 3.6 自定义...

    AnyFo - Struts 2_1爆胎易筋丸.pdf

    2 Action 研究.........................................................................................................................8 2.1 访问Servlet API................................................

    Spring中文帮助文档

    7.5.6. 使用“全局”通知器 7.6. 简化代理定义 7.7. 使用ProxyFactory通过编程创建AOP代理 7.8. 操作被通知对象 7.9. 使用“自动代理(autoproxy)”功能 7.9.1. 自动代理bean定义 7.9.2. 使用元数据驱动的...

    Spring API

    7.5.6. 使用“全局”通知器 7.6. 简化代理定义 7.7. 使用ProxyFactory通过编程创建AOP代理 7.8. 操作被通知对象 7.9. 使用“自动代理(autoproxy)”功能 7.9.1. 自动代理bean定义 7.9.2. 使用元数据驱动的...

    Spring-Reference_zh_CN(Spring中文参考手册)

    构造器参数类型匹配 3.3.2.2. 构造器参数的索引 3.3.3. bean属性及构造器参数详解 3.3.3.1. 直接量(基本类型、Strings类型等。) 3.3.3.2. 引用其它的bean(协作者) 3.3.3.3. 内部bean 3.3.3.4. 集合 3.3.3.5. ...

    spring chm文档

    7.5.6. 使用“全局”advisor 7.6. 简化代理定义 7.7. 使用ProxyFactory通过编程创建AOP代理 7.8. 操作被通知对象 7.9. 使用“自动代理(autoproxy)”功能 7.9.1. 自动代理bean定义 7.9.2. 使用元数据驱动的...

    Spring 2.0 开发参考手册

    19.3.1. 使用消息转换器 19.3.2. SessionCallback 和ProducerCallback 19.4. 接收消息 19.4.1. 同步接收 19.4.2. 异步接收 - 消息驱动的POJOs 19.4.3. SessionAwareMessageListener 接口 19.4.4. ...

    freemarker总结

    6、 用户自定义FTL指令:宏和变换器 7、 节点 节点变量表示为树型结构中的一个节点,通常在XML处理中使用。 在模板里对sequences和hashes初始化 sequences 1. [“you”,”me”,”he”] 2. 1..100 3. [ {“Akey...

Global site tag (gtag.js) - Google Analytics