开发手册 欢迎您!
软件开发者资料库

Java BeanUtils - 基本属性访问

Java BeanUtils基本属性访问 - 从简单和简单的步骤学习Java BeanUtils,从基本到高级概念,包括概述,背景,基本,嵌套属性访问,自定义内省,抑制属性,BasicDynaBeans,ResultSetDynaClass,RowSetDynaClass,WrapDynaBean,Lazy DynaBeans, BeanUtils和ConvertUtils,创建自定义转换器,区域设置感知转换,比较Bean,操作集合,查询或过滤集合,转换集合,标准JavaBeans,动态Bean(DynaBeans),数据类型转换,实用程序对象和类,集合。

描述

您可以使用以下方式访问基本属性:

  • 简单属性

  • 索引属性

  • 映射属性

简单属性

您可以获取并设置简单使用以下API签名的属性值:

  • PropertyUtils.getSimpleProperty(Object,String)

  • PropertyUtils.SetSimpleProperty(Object,String,Object)

参数:

  • 对象:它是一个bean对象,用于指定要提取的bean属性.

  • 字符串:它是一个字符串名称,用于指定要提取的属性的名称./p>

索引属性

您可以使用两个选项来创建索引属性;第一个选项是将下标构建到属性名称中,第二个选项是在单独的参数中定义下标以调用方法.

索引属性可以通过使用来获取和设置以下方法:

  • PropertyUtils.getIndexedProperty(Object,String)

  • PropertyUtils.getIndexedProperty(Object,String,int)

  • PropertyUtils.setIndexedProperty(Object,String,Object)

  • PropertyUtils.setIndexedProperty(Object,String,int,Object)

参数:

  • 对象:这是一个bean对象,它指定bean属性为提取.

  • 字符串:这是一个字符串名称,用于指定要提取的属性的名称.

  • int :它设置属性值的索引.

  • Object :它指定索引属性elem的值ent.

映射属性

您可以获取并设置使用以下API签名映射属性值.如果你有任何额外的参数,那么它可以在括号内写成("("和")")而不是使用方括号.

  • PropertyUtils.getMappedProperty(Object,String)

  • PropertyUtils.getMappedProperty(Object,String,String)

  • PropertyUtils.setMappedProperty(Object,String,Object)

  • PropertyUtils.setMappedProperty(Object,String, String,Object)

参数:

  • 对象:它是一个bean对象,它指定要提取的bean属性.

  • String :它是应为Mapped属性设置的属性值的名称.

  • String :它定义要设置的属性值的键.

  • 对象:它指定要设置的属性的值.

示例

以下示例演示使用o f以上beanUtils中的属性:

import org.apache.commons.beanutils.PropertyUtils;import java.util.ArrayList;import java.util.List;public class BeanUtilsPropertyDemo{   public static void main(String args[]){   try{      // Creating the bean and allows to access getter and setter properties      MyBean myBean = new MyBean();      // Setting the properties on the myBean      PropertyUtils.setSimpleProperty(myBean, "stringProp", "Hello!This is a string");      PropertyUtils.setSimpleProperty(myBean, "floatProp", new Float(25.20));      // Getting the simple properties      System.out.println("String Property: " + PropertyUtils.getSimpleProperty(myBean, "stringProp"));      System.out.println("Float Property: " + PropertyUtils.getSimpleProperty(myBean, "floatProp"));      // Here we will create a list for the indexed property      Listlist = new ArrayList();      list.add("String value 0");      list.add("String value 1");      myBean.setListProp(list);      // get and set this indexed property      PropertyUtils.setIndexedProperty(myBean, "listProp[1]", "This is new string value 1");      System.out.println("List Property[1]: " + PropertyUtils.getIndexedProperty(myBean, "listProp[1]"));   }catch(Exception e){      System.out.println(e);   }   }}

现在我们将再创建一个名为 MyBean的类.用于bean类的java :

import java.util.ArrayList;import java.util.List;public class MyBean {   private String stringProp;   private float floatProp;   //indexed property   @SuppressWarnings("rawtypes")   private List listProp = new ArrayList();   public void setStringProp(String stringProp) { this.stringProp = stringProp; }   public String getStringProp() { return this.stringProp; }   public void setFloatProp(float floatProp) { this.floatProp = floatProp; }   public float getFloatProp() { return this.floatProp; }   public void setListProp(List listProp) { this.listProp = listProp; }   public List

输出

让我们执行以下步骤来看看上面的方法代码有效:

  • 将上面的第一个代码保存为 BeanUtilsPropertyDemo.java .

  • 现在使用"运行"选项或Ctrl + f11执行代码并显示如下输出.

基本属性访问