打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
Struts ActionForm中自定义转换器Converter(简单易懂)

步骤:
--实现Converter接口
--重写convert方法
--注册转换器(servlet方式或plugin方式)
----servlet方式
------web.xml文件配置servlet
----plugin方式
------struts-config.xml中配置plugin
-------------------------------------------------------------------------------------------
实例如下:

为java.util.Date自定义一个转换器

实现Converter接口的TestUtilDateConverter.java

package com.yulin.struts;

import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;

import org.apache.commons.beanutils.Converter;

public class TestUtilDateConverter implements Converter {

//重写convert方法
public Object convert(Class type, Object value) {
   if(value == null){
    return new Date();
   }
   if(value instanceof Date){
    return value;
   }
   if(value instanceof String){
    SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
    try {
     return sdf.parse((String)value);
    } catch (ParseException e) {
     e.printStackTrace();
    }
   }
   return null;
}

}


注册转换器(servlet方式或plugin方式)

以servlet方式注册转换器

package com.yulin.struts;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;

import org.apache.commons.beanutils.ConvertUtils;

public class TestUtilDateConverterServlet extends HttpServlet {

@Override
public void init() throws ServletException {

//注册转换器
   ConvertUtils.register
(new TestUtilDateConverter(), java.util.Date.class);
}

}
----servlet方式--web.xml文件配置servlet

<servlet>
   <servlet-name>TestUtilDateConverterServlet</servlet-name>
   <servlet-class>com.yulin.struts.TestUtilDateConverterServlet</servlet-class>
   <load-on-startup>3</load-on-startup>
</servlet>

以plugin方式注册转换器

package com.yulin.struts;

import javax.servlet.ServletException;

import org.apache.commons.beanutils.ConvertUtils;
import org.apache.struts.action.ActionServlet;
import org.apache.struts.action.PlugIn;
import org.apache.struts.config.ModuleConfig;

public class TestUtilDateConverterPlugin implements PlugIn {

public void destroy() {
}

public void init(ActionServlet arg0, ModuleConfig arg1)
    throws ServletException {

   //注册转换器
   ConvertUtils.register
(new TestUtilDateConverter(), java.util.Date.class);
}

}

----plugin方式--struts-config.xml中配置plugin

<plug-in className="com.yulin.struts.TestUtilDateConverterPlugin"/>


本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
[Jakarta Commons笔记] Commons BeanUtils
Struts的资源文件时如何初始化的--struts源码学习 - 轮上飞 - BlogJa...
SSH实现的增删改查实例
将Hibernate与Struts结合
在struts2中使用拦截器(Interceptor)控制登录和权限
struts 1.2 文件上传与下载
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服