使用ConvertUtils的日期转换器
- import java.io.IOException;
import java.lang.reflect.InvocationTargetException;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
import javax.persistence.Converts;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.apache.commons.beanutils.BeanUtils;
import org.apache.commons.beanutils.ConvertUtils;
import org.apache.commons.beanutils.Converter;
import org.apache.commons.beanutils.locale.converters.DateLocaleConverter;
import com.domain.user;
import com.service.UserService;
import com.service.impl.UserServiceImpl;
import com.sun.research.ws.wadl.Request;
/**
* Servlet implementation class regServlet
*/
@WebServlet("/regServlet")
public class regServlet extends HttpServlet {
private static final long serialVersionUID = 1L;
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
request.setCharacterEncoding("UTF-8");
response.setContentType("text/html;charset=utf-8");
//获取表单数据
user user = new user();
try {
/* ConvertUtils.register(new Converter() {//注册一个日期转换器
@Override
public Object convert(Class type, Object value) {
// TODO Auto-generated method stub
Date date1 = null;
if(value instanceof String){
String date = (String) value;
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-mm-dd");
try {
date1 = sdf.parse(date);
} catch (ParseException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
return date1;
}
}, Date.class);*/
ConvertUtils.register(new DateLocaleConverter(), Date.class);
BeanUtils.populate(user, request.getParameterMap());
//调用业务逻辑
UserService us = new UserServiceImpl();
try {
us.register(user);
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
} catch (IllegalAccessException | InvocationTargetException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
//分发转向
response.getWriter().write("注册成功!1秒钟跳到主页");
response.setHeader("refresh", "1;url="+request.getContextPath()+"/index.jsp");
}
/**
* @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
*/
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
doGet(request, response);
}
}