BeanUtils常用方法。
package cn.itcast.beans;
import java.util.HashMap;
import java.util.Map;
import org.apache.commons.beanutils.BeanUtils;
import org.junit.Test;
public class App {
//对javabean的基本操作
@Test
public void test1() throws Exception{
//1.基本操作
Admin admin=new Admin();
/*admin.setUserName("jack");
admin.setPwd("999");*/
//2.使用beanUtils
/**
* 1.属性的copy
*/
BeanUtils.copyProperty(admin, "userName", "jack");
BeanUtils.setProperty(admin, "age", 18);
/**
* 2.对象的copy
*/
Admin newadmin=new Admin();
BeanUtils.copyProperties(newadmin,admin);
/**
* 3.copy map到对象中
*/
Map<String,Object> map=new HashMap<String,Object>();
map.put("userName", "jerry");
map.put("age", 18);
Admin adminmap=new Admin();
BeanUtils.populate(adminmap, map);
System.out.println(adminmap.getUserName());
System.out.println(adminmap.getAge());
}
}
2.日期转换器-------自定义
public void test2() throws Exception {
//1.模拟表单数据
String name="jack";
String age="18";
String brith="1990-10-18";
//Date brith=new Date();
//2.对象
Admin admin=new Admin();
/**
* 注册日期类型转换器
*/
/**
* 1.自定义
*/
ConvertUtils.register(new Converter() {
@Override
public Object convert(Class type, Object value) {
// 字符串转换为日期
if(type!=Date.class){
return null;
}
if(value==null||"".equals(value.toString().trim())){
return null;
}
SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd");
try {
return sdf.parse(value.toString());
} catch (ParseException e) {
// TODO Auto-generated catch block
throw new RuntimeException();
}
}
}, Date.class);
//3.封装
BeanUtils.copyProperty(admin, "userName", name);
BeanUtils.copyProperty(admin,"age", age);
BeanUtils.copyProperty(admin,"brith", brith);
// System.out.println("brith");
System.out.println(admin);
}
3.日期转换器-------BeanUtils工具类中的DateLocaleConverer()转换器
@Test
public void test3() throws Exception {
//1.模拟表单数据
String name="jack";
String age="18";
String brith="1990-10-18";
//2.创建对象
Admin admin=new Admin();
/**
* 2.使用组件提供的日期转换器工具类
*/
ConvertUtils.register(new DateLocaleConverter(), Date.class);
//3.封装
BeanUtils.copyProperty(admin, "userName", name);
BeanUtils.copyProperty(admin,"age", age);
BeanUtils.copyProperty(admin,"brith", brith);
//测试
System.out.println(admin);
}
}