为控制器配置日期处理

第一步:定义父类java

package group.esperanto.action.util;

import java.text.SimpleDateFormat;
import java.util.Locale;
import javax.annotation.Resource;
import org.springframework.beans.propertyeditors.CustomDateEditor;
import org.springframework.context.MessageSource;
import org.springframework.web.bind.WebDataBinder;
import org.springframework.web.bind.annotation.InitBinder;

public class AbstractAction {
	@InitBinder
	public void initBinder(WebDataBinder binder){
		SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
		// 本方法的处理旨在追加一个自定义的转换编辑器,碰见java.util.Date类型就使用定义好的SimpleDateFormat来格式化处理,
		binder.registerCustomEditor(java.util.Date.class, new CustomDateEditor(sdf, true));  //这里的true表明容许参数内容为空
	}
}

第二步:子类中继承web

package group.esperanto.action;

import java.io.IOException;
import java.util.Date;
import javax.servlet.ServletContext;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
import javax.sound.midi.MidiDevice.Info;
import org.apache.log4j.Logger;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.servlet.ModelAndView;
import group.esperanto.action.util.AbstractAction;

@Controller
// 定义该Action的映射路径
// 该路径绝对不能重复
@RequestMapping("/pages/emp/*")
public class EmpAction extends AbstractAction {	 //继承父类
	private	Logger log = Logger.getLogger(EmpAction.class);
	
	@RequestMapping("echo")  //映射方法名 
   public void echo(String msg,Date date){  //第二个参数为日期类型,将被父类定义的日期格式方法处理
	   Logger.getLogger(EmpAction.class).info(msg);
	   Logger.getLogger(EmpAction.class).info(date);
   }	
}
相关文章
相关标签/搜索