A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

本帖最后由 toShareBeauty 于 2013-7-22 15:10 编辑
  1. package cn.itcast.reflect;

  2. import org.apache.commons.beanutils.BeanUtils;

  3. /**
  4. * @class: IntrospectorDemo
  5. * @package: cn.itcast.reflect
  6. * @description: TODO
  7. * @author: vivianZhao
  8. * @date: 2013-7-22 上午9:15:36
  9. * @version: 1.0
  10. */
  11. public class IntrospectorDemo {

  12.         /**
  13.          * @method: main
  14.          * @description: TODO
  15.          * @param args
  16.          * @return: void
  17.          * @author: vivianZhao
  18.          * @date: 2013-7-22 上午9:15:36
  19.          * @version: 1.0
  20.          */
  21.         public static void main(String[] args) throws Exception {

  22.                 Point point = new Point(2, 5);
  23.                 String propertieName = "x";
  24.                 BeanUtils.setProperty(point, propertieName, "8");
  25.                 System.out.println(point.getX());
  26.                 System.out.println(BeanUtils.getProperty(point, propertieName));
  27.                 System.out.println(BeanUtils.getProperty(point, propertieName).getClass()
  28.                                 .getName());

  29.                 BeanUtils.setProperty(point, propertieName, 8);
  30.                 System.out.println(BeanUtils.getProperty(point, propertieName).getClass()
  31.                                 .getName());
  32.                 // 我们看到虽然属性x的类型是Integer,但是我们设置的时候无论是Integer还是String,BeanUtils的内部
  33.                 // 都是当成String来处理的。
  34.         }
  35. }

  36. class Point {
  37.         private Integer x;
  38.         private Integer y;

  39.         public Point() {

  40.         }

  41.         public Point(Integer x, Integer y) {
  42.                 super();
  43.                 this.x = x;
  44.                 this.y = y;
  45.         }

  46.         public Integer getX() {
  47.                 return x;
  48.         }

  49.         public void setX(Integer x) {
  50.                 this.x = x;
  51.         }

  52.         public Integer getY() {
  53.                 return y;
  54.         }

  55.         public void setY(Integer y) {
  56.                 this.y = y;
  57.         }
  58. }
复制代码
上面是代码,很简单的 BeanUtils 包的应用,但是却报一下异常:
这是我添加的工具包,新鲜出炉的,在 apache 网站下载的:

本人查找了很久,认为我的 setter 和 getter 都有,请问一下大侠,为什么上面报这个 setter 找不到,真的莫名其妙哦?

2 个回复

倒序浏览
把你的bean抽出去 单独开个文件 bean要public
回复 使用道具 举报 1 0
草貌路飞 发表于 2013-7-22 14:51
把你的bean抽出去 单独开个文件 bean要public

         bingo
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马