struts,hibernate 中日期转换问题

 时间转换器的类可以这样写,但是便于在项目中易于维护,你最好将他放在一个Servlet中,然后将Servlet配置在web.xml中,使得项目在启动后可以对任何页面的时间进行转换。
时间转换器:
Java代码
  1. package com.xiaosu;   
  2. import java.text.ParseException;   
  3. import java.text.SimpleDateFormat;   
  4. import java.util.Date;   
  5.   
  6. import org.apache.commons.beanutils.Converter;   
  7.   
  8. public class UtilDateConverter implements Converter {   
  9.   
  10.     private static SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");   
  11.   
  12.     public Object convert(Class type, Object value) {   
  13.         if (value == null) {   
  14.             return value;   
  15.         }   
  16.         if (value instanceof Date) {   
  17.             return value;   
  18.         }   
  19.         if (value instanceof String) {   
  20.             try {   
  21.                 return format.parse((String) value);   
  22.             } catch (ParseException ignore) {   
  23.             }   
  24.         }   
  25.         return null;   
  26.     }   
  27. }  
package com.xiaosu;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;

import org.apache.commons.beanutils.Converter;

public class UtilDateConverter implements Converter {

	private static SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");

	public Object convert(Class type, Object value) {
		if (value == null) {
			return value;
		}
		if (value instanceof Date) {
			return value;
		}
		if (value instanceof String) {
			try {
				return format.parse((String) value);
			} catch (ParseException ignore) {
			}
		}
		return null;
	}
}

Servlet类:
Java代码
  1. package com.xiaosu;   
  2. import java.util.Date;   
  3. import javax.servlet.ServletException;   
  4. import javax.servlet.http.HttpServlet;   
  5.   
  6. import org.apache.commons.beanutils.ConvertUtils;   
  7.   
  8. public class InitServlet extends HttpServlet {   
  9.     @Override  
  10.     public void init() throws ServletException {   
  11.         //注册日期类型的转换器   
  12.         ConvertUtils.register(new UtilDateConverter(), Date.class);   
  13.     }   
  14. }  
package com.xiaosu;
import java.util.Date;
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;

import org.apache.commons.beanutils.ConvertUtils;

public class InitServlet extends HttpServlet {
	@Override
	public void init() throws ServletException {
		//注册日期类型的转换器
		ConvertUtils.register(new UtilDateConverter(), Date.class);
	}
}

web.xml配置:
<servlet>
    <servlet-name>initServlet</servlet-name>
    <servlet-class>com.xiaosu.InitServlet</servlet-class>
    <load-on-startup>3</load-on-startup>
  </servlet>
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值