BeanUtils包的使用
来源:互联网 发布:数字媒体技术软件 编辑:程序博客网 时间:2024/05/16 09:09
文章来源:http://www.cnblogs.com/H_Razor/archive/2011/03/01/1967620.html
BeanUtils工具包是由Apache公司所开发,主要是方便程序员对Bean类能够进行简便的操作。
在使用BeanUtils工具包之前我们需要的Jar包有以下几种:
(1) BeanUtils相关包
commons-beanutils-1.8.3.jar
commons-beanutils-1.8.3-javadoc.jar
commons-beanutils-1.8.3-javadoc.jar
commons-beanutils-bean-collections-1.8.3.jar
commons-beanutils-core-1.8.3.jar
(2) Logic4j相关包
commons-logging.jar
log4j.jar
既然要对Bean对象进行操作,那么就需要一个Bean的测试类,我们以下面为所测试的Bean类
1 public class Student { 2 3 4 5 private String name; 6 7 private int age; 8 9 private Date birth;10 11 12 13 14 15 public String getName() {16 17 return name;18 19 }20 21 public void setName(String name) {22 23 this.name = name;24 25 }26 27 public int getAge() {28 29 return age;30 31 }32 33 public void setAge(int age) {34 35 this.age = age;36 37 }38 39 public Date getBirth() {40 41 return birth;42 43 }44 45 public void setBirth(Date birth) {46 47 this.birth = birth;48 49 }50 51 52 53 }
一、先赋值Bean对象里的字段属性,然后再取值:
1 @Test 2 3 public void test01() throws Exception{ 4 5 //1.加载类 6 7 Class clss = Class.forName("com.L.introspector.Student"); 8 9 //2.创建Bean对象10 11 Student st = (Student) clss.newInstance();12 13 //3.通过BeanUtils给对象属性赋值14 15 BeanUtils.setProperty(st, "name", "L。");16 17 //4.输出对象属性值18 19 String str = BeanUtils.getProperty(st, "name");20 21 System.out.println(str);22 23 }
BeanUtils的setProperty(object,name,value)方法需要的参数分别是
Object=加载类的对象
Name=类属性的名称
Value=所赋的值;
BeanUtils的getProperty(object,name)方法的返回值是String类型,所以可以直接输出;
二、 使用BeanUtils自带的时间转化器转化时间
1 @Test 2 3 public void test03() throws Exception{ 4 5 //创建Student Bean对象 6 7 Student st = new Student(); 8 9 //使用自带转化器转化时间格式10 11 ConvertUtils.register(new DateLocaleConverter(), Date.class);12 13 //赋值给birth属性14 15 BeanUtils.setProperty(st, "birth", "1991-09-25");16 17 //输出birth属性的值18 19 System.out.println(st.getBirth());20 21 }
三、 自定义日期格式转换器
1 @Test 2 3 public void test04()throws Exception{ 4 5 //创建Student对象 6 7 Student st = new Student(); 8 9 //使用CovertUtils注册创建一个日期格式转换器10 11 ConvertUtils.register(new Converter() {12 13 14 15 @Override16 17 public Object convert(Class type, Object value) {18 19 //当value参数等于空时返回空20 21 if(value==null){22 23 return null;24 25 }26 27 //自定义时间的格式为yyyy-MM-dd28 29 SimpleDateFormat sdf = new SimpleDateFormat("yyyy-mm-dd");30 31 //创建日期类对象32 33 Date dt = null;34 35 36 37 try {38 39 //使用自定义日期的格式转化value参数为yyyy-MM-dd格式40 41 dt = sdf.parse((String)value);42 43 } catch (ParseException e) {44 45 // TODO Auto-generated catch block46 47 e.printStackTrace();48 49 }50 51 //返回dt日期对象52 53 return dt;54 55 }56 57 }, Date.class);58 59 //给birth赋值60 61 BeanUtils.setProperty(st, "birth", "1991-09-25");62 63 //输出64 65 System.out.println(st.getBirth());66 67 }
ConvertUtils.register(new Converter()中,new Converter()就相当于重写了Converter类中方法:
Public class MyConerter implements Converter{
//并且在此处创建了匿名的对象
}- BeanUtils 包的使用
- BeanUtils包的使用
- BeanUtils包的使用
- BeanUtils包的使用
- BeanUtils包的使用
- BeanUtils包的使用
- BeanUtils包的使用
- BeanUtils包的使用
- commons-beanutils包的使用
- BeanUtils包的使用,主要是BeanUtils和PropertyUtils的区别
- jakarta.commons包中BeanUtils以及ComparatorUtils的使用
- apache.commons.beanutils.BeanUtils的使用
- BeanUtils的使用
- beanutils的使用
- Beanutils的使用
- Beanutils的使用
- Beanutils的使用
- BeanUtils.setProperty的使用
- Linux压缩&解压命令详解
- cocos2dx3.2 某些UI白屏或使用ClippingNode造成部分手机白屏
- 我的2014点点滴
- STM32F103学习笔记(四) 串口实验
- linux vsftpd服务器安装和配置
- BeanUtils包的使用
- 黑马程序员——第一个iOS程序
- android总结整理----(2)自定义ListView(SimpleAdapter实现)
- 一些免费的接口
- Android学习之ListView详解
- GDB 调试Native Crash 总结
- uva 11292 Dragon of Loowater (勇者斗恶龙系列)
- UVA 10154
- 算法复习 -------------------- 0、零零零零零