用戶註冊問題
阿新 • • 發佈:2018-04-12
set per 基本 exc AR xxxx form mce setprop
Map<String,String[]> properties=request.getParameterMap();
User user=new User();
//自己指定一個類型轉換器(將String轉成Date)
ConvertUtils.register(new Converter(){
@Override
public Object convert(Class clazz,Object value){
//將string轉成date
SimpleDateFormat format=new SimpleDateFormat("yyyy-MM-dd");
Date parse=null;
try {
parse=format.parse(value.toString());
}catch (ParseException e){
e.printStackTrace();
}
return parse;
}
},Date.class);
//映射封裝
BeanUtils.populate(user,properties);
上面三行代碼是用來將一些 key-value 的值(例如 hashmap)映射到 bean 中的屬性。映射的過程就是將頁面中的內容先用request獲得,然後再將之轉換為Map(這裏用request.getParameterMap())最後使用BeanUtils.populate(info,map)方法將頁面各個屬性映射到bean中。
之後我們就可以這樣使用bean.getXxxx()來取值了。但是BeanUtils的populate、copyProperties方法或者getProperty,setProperty方法
其實都會調用convert進行轉換但Converter只支持一些基本的類型,甚至連java.util.Date類型也不支持。這個時候就需要給類型註冊轉換器。對於Date類型,我在此實現了一個Converter。
而SimpleDateFormat是對時間日期處理的格式化工具類
用戶註冊問題