基于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
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值