initBinder自动执行
package cn.itcast_a.controller;
import java.text.SimpleDateFormat;
import java.util.Date; //时间类型是util不是sql
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.springframework.beans.propertyeditors.CustomDateEditor;
import org.springframework.validation.BindException;
import org.springframework.web.bind.ServletRequestDataBinder;
import org.springframework.web.servlet.ModelAndView;
import org.springframework.web.servlet.mvc.AbstractCommandController;
import cn.itcast_a.domain.User;
public class CommandController extends AbstractCommandController{
public CommandController(){
this.setCommandClass(User.class);
}
@Override
protected ModelAndView handle(HttpServletRequest request,
HttpServletResponse response, Object commandObject, BindException arg3)
throws Exception {
User user = (User)commandObject ;
ModelAndView modelAndView = new ModelAndView();
modelAndView.addObject("user", user) ;
modelAndView.setViewName("index1");
return modelAndView;
}
@Override
protected void initBinder(HttpServletRequest request,
ServletRequestDataBinder binder) throws Exception {
String str = request.getParameter("birthday") ;
if(str.contains("/")){
binder.registerCustomEditor(Date.class, new CustomDateEditor(new SimpleDateFormat("yyyy/MM/dd"), true));
}else{
binder.registerCustomEditor(Date.class, new CustomDateEditor(new SimpleDateFormat("yyyy-MM-dd"), true));
}
super.initBinder(request, binder);
}
}