- 浏览: 507316 次
- 性别:
- 来自: 上海
文章分类
- 全部博客 (278)
- java (41)
- 设计模式 (4)
- sql (10)
- webservice (2)
- spring (9)
- struts (6)
- struts2 (32)
- hibernate (27)
- Struts_hibernate_Spring整合 (4)
- Velocity (1)
- Servlet (9)
- JSP (6)
- javascript (19)
- jquery (10)
- ajax (4)
- html、xml (3)
- JDBC (2)
- JDK (6)
- mysql (2)
- oracle (11)
- SqlServer (1)
- DB2 (4)
- tool (7)
- linux (5)
- UML (1)
- eclipse (8)
- 执行文件 (1)
- 应用服务器 (4)
- 代码重构 (1)
- 日本語 (19)
- 交规 (1)
- office (9)
- firefox (1)
- net (1)
- 测试 (1)
- temp (6)
- 对日外包 (1)
- windows (1)
- 版本控制 (1)
- android (2)
- 项目管理 (1)
最新评论
功能说明:
顾名思义,Bean Utility就是Bean小工具,主要是封装了反射(reflection)和自省(introspection)的API(可以查看java.lang.reflect和java.beans文档),对bean进行操作。
主要功能:
操作Bean的属性,针对Bean属性排序,Bean和Map的转换,创建动态的Bean等
2.1 org.apache.commons.beanutils.PropertyUtils 利用反射操作bean的属性
getSimpleProperty()通过反射读取属性
Person person=new Person(); person.setName=("heis"); String name=(String)PropertyUtils.getSimpleProperty(person,"name");->heis
getNestedProperty()检索嵌套的bean属性
Book book=new Book(); book.setAuthor(person); String authorName=(String)PropertyUtils.getNestedProperty(book,"author.name");//得到person的name
getIndexedProperty()访问数组或List型内Object的属性
Chapter chapter1=new Chapter(); Chapter chapter2=new Chapter(); book.getChapters().add(chapter1); book.getChapters().add(chapter2); Chapter chapter=(Chapter)PropertyUtils.getIndexedProperty(book,"chapter[0]");
getMappedProperty()访问Map型bean属性的值
Person person=new Person(); person.setName=("heis"); Map favorites=new HashMap(); favorites.put("food","rice"); person.setFavorite(favorites); String favorFood=(String)PropertyUtils.getMappedProperty(person,"favorites(food)");->rice
getProperty()和setProperty()可以访问任何bean属性,通过表达式可以完成上面方法的功能
这是一个树型的Bean属性视图 Book book |--List authors |--[0]->Person person |--Map favorites |--Entry(key->"food",value->"") PropertyUtils.setProperty(book,"authors[0].favorites(food)","rice"); String favorFood=(String)PropertyUtils.getProperty(book,"authors[0].favorites(food)");->rice
isReadable()和isWritable()检查bean是否可读(有getter)或可写(有setter)
PropertyUtils.isReadable(book,"name"); PropertyUtils.isWritable(book,"name");
getPropertyType()获取属性类型
System.out.println(PropertyUtils.getPropertyType(person,"favorites"));->java.util.Map
copyProperty()复制Bean属性,只复制引用,final类型和原始类型(primitive type)
Book book1=new Book(); book1.setName("Commons Cookbook Notes"); Book book2=new Book(); PropertyUtils.copyProperty(book2,book1);//将book1的name属性copy到book2
describe()创建包含Bean属性的Map
Person person=new Person(); person.setName("heis"); Book book=new Book(); book.setName("Commons Cookbook Notes"); book.setAuthor(person); Map propMap=PropertyUtils.describe(book); propMap.get("name");->Commons Cookbook Notes propMap.get("author");->person
发表评论
文章已被作者锁定,不允许评论。
-
Java8 ,JDK1.8 新特性
2016-12-08 14:58 740一、接口的默认方法 Java 8允许我们给接口 ... -
Google Guava官方教程 学习
2016-12-05 17:43 320http://ifeve.com/google- ... -
Guava 相关内容(一)
2016-05-20 00:08 484一、Java 不可以变的集合 Guava学习笔记: ... -
poi excel 相关
2015-04-07 11:22 653一、poi excel 分组(group) ... -
java 相关问题(四)
2013-05-24 15:54 1208十九、Java中对Map(HashMap,TreeMap, ... -
apache-common
2013-01-09 10:47 1011... -
Java注释的写法
2012-11-16 15:02 753一. Java 文档 // 注释 ... -
正则表达式
2012-05-25 09:19 950编程的大量工作都是在处理字符串,如验证输入、查 ... -
java 相关问题(三)
2012-03-08 16:31 1474十三、java 实现 调用 打印机 代码详解 ... -
J2EE秘籍
2012-02-13 15:42 691转:http://zhufeng1981.iteye.com/ ... -
java 相关问题(二)
2011-08-02 15:47 1059七、ThreadLocal 详解 首先,Thre ... -
java 相关问题(一)
2011-05-10 19:16 993一、 java Cloneable 详 ... -
java 读写 properties
2011-04-19 14:15 1179一、 /* * @(#)RWProper ... -
JMS API 中文版
2011-04-13 14:20 802转:http://www.iteye.com/to ... -
ant 教程
2011-04-12 23:56 1120一、ant 教程 1 Ant是什么? ... -
properties 文件中 定义内容 相关问题
2011-02-22 20:41 2228一、在 properties 文件中 定义{ } 会 ... -
java 线程
2011-02-10 17:07 894一、 Runnable、 Thread ... -
java.util.logging (不用log4j配置,自己写log文件)
2010-10-11 11:55 7404<!-- Generated by javadoc ( ... -
java 静态块 非静态块
2010-09-21 17:39 1381一。一个简单的例子 1. 所有静态的(无论其是变量 ... -
java MessageFormat
2010-09-21 11:03 3470一。 MessageFormat 提供了以 ...
相关推荐
Apache Commons BeanUtils Apache Commons BeanUtils为反射和自省提供了一个易于使用但灵活的包装器。文献资料可以在上找到更多信息。 可以浏览 。 与Apache Commons BeanUtils的用法有关的问题应张贴到。在哪里可以...
commons-beanutils, Apache Commons Beanutils的镜像 Apache Commons BeanUtils Apache Commons BeanUtils提供了一个 easy-to-use,但它围绕反射。文档更多信息可以在公共BeanUtils主页上找到。 可以浏览 JavaDoc插
jar包,官方版本,自测可用
Commons beanutils API.chm apache Commons beanutils API
org.apache.commons.beanutils.jar
使用beanutils,可以更好的操作数据,对于做框架和理解框架都有很大的作用
commons-beanutils-1.8.0-BETA-src.tar.gz源码,commons-beanutils-1.8.0-BETA-src.tar.gz源码,commons-beanutils-1.8.0-BETA-src.tar.gz源码
jar包,官方版本,自测可用
此为BeanUtils的实例。其中apache的包有一个小的BUG已在其中说明。
log4j:WARN No appenders could be found for logger org apache commons beanutils ConvertUtils 出现这个错误 在web inf classes路径下加了log4j properties文件还是这个错误log4j:WARN Please initialize the ...
commons-beanutils:Apache Commons BeanUtils 库,用于操作 JavaBeans。 commons-collections:Apache Commons Collections 库,提供了一些额外的 Java 集合类。 commons-logging:Apache Commons Logging 库,用于...
本资料共包含以下附件: commons-beanutils-1.8.0.rar commons-beanutils-1.8.3.rar
apache commons jar(commons所有的jar包... apache-sanselan-incubating-0.97-bin bcel-5.2 commons-beanutils-1.9.2-bin commons-chain-1.2-bin commons-cli-1.3.1-bin commons-codec-1.10-bin commons-collections4-4
配置服务端所需要的jar文件,包括commons-logging commons-beanutils commons-lang ezmorph json-lib-2.4-jdk15 commons-collections-3.2.1。
解决办法是把commons-beanutils中的org/apache/commons/collections删除,这里上传一个改好可以直接使用的。
赠送jar包:commons-beanutils-1.9.3.jar; 赠送原API文档:commons-beanutils-1.9.3-javadoc.jar; 赠送源代码:commons-beanutils-1.9.3-sources.jar; 包含翻译后的API文档:commons-beanutils-1.9.3-javadoc-...
Commons-beanutils-API Commons-collections-API Commons-configuration-API Commons-lang-API Commons-logging-API Dom4j_API java api javascript Struts API J2EE API
apache-commons下全部官方源码和官方API文档,其中有: commons-beanutils-1.8.0 commons-codec commons-collections commons-dbcp commons-dbutils commons-fileupload commons-io commons-lang commons-lang3 ...
版本:commons-beanutils-1.6.0 代码值得研究与借鉴,非常不错