内省—beanutils工具包 操作javabean属性
来源:互联网 发布:阿里云搭建http代理 编辑:程序博客网 时间:2024/05/02 00:05
内省—beanutils工具包 操作javabean属性 比 内省Introspector类操作javabean属性更加方便。内省—beanutils工具包 是Apache组织开发了一套用于操作JavaBean的API,Introspector是sun公司自己开发的一套用于操作JavaBean的API。
1. 新建工程,建包cn.itcast.beanutils,在包下建javabean类Student,代码如下:
package cn.itcast.beanutils; import java.util.Date; public class Student { private String name; private String password; private String email; private int age; private Date birthday; public Date getBirthday() { return birthday; } public void setBirthday(Date birthday) { this.birthday = birthday; } public String getPassword() { return password; } public void setPassword(String password) { this.password = password; } public String getEmail() { return email; } public void setEmail(String email) { this.email = email; } public int getAge() { return age; } public void setAge(int age) { this.age = age; } public String getName() { return name; } public void setName(String name) { this.name = name; }}
- 在cn.itcast.beanutils下建Demo类操作Student类的各属性,代码如下:
需注意导入commons-beanutils-1.9.2.jar和commons-logging-1.0.4.jar包
package cn.itcast.beanutils;import java.lang.reflect.InvocationTargetException;import java.text.ParseException;import java.text.SimpleDateFormat;import java.util.Date;import org.apache.commons.beanutils.BeanUtils;import org.apache.commons.beanutils.ConversionException;import org.apache.commons.beanutils.ConvertUtils;import org.apache.commons.beanutils.Converter;import org.apache.commons.beanutils.converters.DateConverter;import org.apache.commons.beanutils.locale.converters.DateLocaleConverter;import org.junit.Test;public class Demo { /*内省—beanutils工具包 Apache组织开发了一套用于操作JavaBean的API*/ @Test public void test1() throws Exception, InvocationTargetException{ Student stu=new Student(); String name="maomao"; String password="123"; String email="123@qq.com"; int age=23; //1. BeanUtils.setProperty设置Student stu的各属性 BeanUtils.setProperty(stu, "name", name); BeanUtils.setProperty(stu, "password", password); BeanUtils.setProperty(stu, "email", email); BeanUtils.setProperty(stu, "age",age); //2.BeanUtils.getProperty获取Student stu的各属性 String Name=BeanUtils.getProperty(stu, "name"); String Password=BeanUtils.getProperty(stu, "password"); String Email=BeanUtils.getProperty(stu, "email"); String Age=BeanUtils.getProperty(stu, "age"); System.out.println("name="+Name+", password="+password+", email="+Email+", age="+Age); } @Test public void test2() throws Exception, InvocationTargetException{ Student stu=new Student(); //当数据类型间不能直接转换时,需要调用转换器实现数据类型的转换 String birthday="1999-09-09"; //因为字符串不能转换成Date类型,所以此处需要注册一个转换器.下面代码表示遇到Date类型的数据时调用DateConverter()转换器 ConvertUtils.register(new DateLocaleConverter(), Date.class); BeanUtils.setProperty(stu, "birthday",birthday); System.out.println(BeanUtils.getProperty(stu, "birthday")); } @Test public void test3() throws Exception, InvocationTargetException{ Student stu=new Student(); //当数据类型间不能直接转换时,需要调用转换器实现数据类型的转换,自己编写转换器 String birthday="1999-09-09"; //下面代码表示自己编写一个实现字符串到日期类型的转换器 //注册转换器, //Converter是接口类型,不能直接new 接口,new接口时必须实现接口的抽象方法 ConvertUtils.register(new Converter(){ public Object convert(Class type, Object value) { if(value==null){ return null; } SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd"); Date date = null; try { date = format.parse((String)value); } catch (ParseException e) { throw new ConversionException(e); } return date; } }, Date.class); BeanUtils.setProperty(stu, "birthday",birthday); System.out.println(BeanUtils.getProperty(stu, "birthday")); }}
0 0
- 内省—beanutils工具包 操作javabean属性
- JavaBean内省:认识JavaBean与内省、对JavaBean的内省操作、Beanutils工具包
- 泛型、JavaBean内省、beanutils工具包
- 内省.BeanUtils操作JavaBean
- BeanUtils工具包操作JavaBean
- Beanutils工具包操作JavaBean
- JAVA高新技术——JavaBean、内省、BeanUtils工具包
- 黑马程序员------------------内省,JavaBean,BeanUtils工具包
- BeanUtils\PropertyUtils工具包操作JavaBean
- 内省操作javabean属性
- 内省、JavaBean、PropertyDescriptor类、Introspector类、BeanUtils工具包
- 内省、JavaBean、PropertyDescriptor类、Introspector类、BeanUtils工具包、注解、Rentention、Target、注解的基本属性和高级属性
- 内省、JavaBean、PropertyDescriptor类、Introspector类、BeanUtils工具包、注解、Rentention、Target、注解的基本属性和高级属性
- 内省、JavaBean、PropertyDescriptor类、Introspector类、BeanUtils工具包、注解、Rentention、Target、注解的基本属性和高级属性
- 内省、JavaBean、PropertyDescriptor类、Introspector类、BeanUtils工具包、注解、Rentention、Target、注解的基本属性和高级属性
- 内省、JavaBean、PropertyDescriptor类、Introspector类、BeanUtils工具包、注解、Rentention、Target、注解的基本属性和高级属性
- 内省、JavaBean、PropertyDescriptor类、Introspector类、BeanUtils工具包、注解、Rentention、Target、注解的基本属性和高级属性
- 内省、JavaBean、PropertyDescriptor类、Introspector类、BeanUtils工具包、注解、Rentention、Target、注解的基本属性和高级属性
- MFC界面编程1:GDI+实现不规则窗体
- java 反射加载类的对象
- 二分思路总结
- Spring学习(十三)Spring Bean 的命名方式介绍
- 内省(Introspector)操作JavaBean的属性
- 内省—beanutils工具包 操作javabean属性
- epub是什么文件?epub文件怎么打开?
- CSAPP3e - x86-64 assembly code analysis - Bomb Lab: phase 4
- Jackson入门教程
- 给定一个未排序的整数数组,找到其中位数。 中位数是排序后数组的中间值,
- C语言学习篇-9指针运算、指针与数组
- C语言到c++的第一步 注释转换
- POJ 2688 Cleaning Robot
- java socket实现文件的上传和下载试例