黑马程序员技术交流社区

标题: 在学习BeanUtils工具包时的疑问,代码应该是对的呀,就是... [打印本页]

作者: ☆星痕泪    时间: 2013-12-21 14:46
标题: 在学习BeanUtils工具包时的疑问,代码应该是对的呀,就是...
本帖最后由 ☆星痕泪 于 2013-12-21 19:07 编辑
  1. 示例:构建连级属性,在NewBean中引入变量DemoBean实例
  2. package cn.heima.Day2;
  3. public class DemoBean{
  4.         private String name;
  5. public DemoBean(String name) {
  6.                 super();
  7.                 this.name = name;
  8.         }
  9.         public String getName() {
  10.                 return name;
  11.         }
  12.         public void setName(String name) {
  13.                 this.name = name;
  14.         }        
  15. }
  16. package cn.heima.Day2;
  17. public class NewBean {
  18.         private DemoBean db = new DemoBean();
  19.         public DemoBean getDb() {
  20.                 return db;
  21.         }
  22.         public void setDb(DemoBean db) {
  23.                 this.db = db;
  24.         }
  25. }
  26. 测试类:
  27. package cn.heima.Day2;
  28. import java.lang.reflect.InvocationTargetException;
  29. import org.apache.commons.beanutils.BeanUtils;
  30. public class ReflectBean {
  31.         public static void main(String[] args)
  32.                         throws IllegalAccessException,
  33.                         InvocationTargetException, NoSuchMethodException {
  34.                
  35.                 NewBean nb = new NewBean();
  36.                 BeanUtils.setProperty(nb, "db.name", "练习");
  37.                 System.out.println(BeanUtils.getProperty(nb, "db.name"));
  38.         }
  39. }
复制代码

HNKH}188B4Y(9REVZK{VA8L.jpg (83.14 KB, 下载次数: 32)

HNKH}188B4Y(9REVZK{VA8L.jpg

作者: ☆星痕泪    时间: 2013-12-21 14:47
这是怎么回事?
作者: 776699    时间: 2013-12-21 15:00
什么错误粘贴出来
作者: ☆星痕泪    时间: 2013-12-21 15:12
776699 发表于 2013-12-21 15:00
什么错误粘贴出来

图片已上。我不知道是不是我导包导错了吗?可是做视频讲解那个都可以用这个包设置出来。还有一个问题,
  1. BeanUtils.setProperty(bean, "birthDay.time","77");
  2.                 System.out.println(BeanUtils.getProperty(bean,"birthDay.time"));//获取设置后的time值
复制代码

之前就是因为这个 高了半天没见动静,没报错。所以我就想想自己做一个,奶奶的,还居然报错。弄了好久。哥们都快哭了。。。
作者: 776699    时间: 2013-12-21 16:17
你好:修改后:
public class DemoBean {
         private String name;
         DemoBean(){}
         public DemoBean(String name) {

                         super();

                         this.name = name;

                 }

                 public String getName() {

                         return name;

                 }

                 public void setName(String name) {

                         this.name = name;

                 }   
}
作者: 776699    时间: 2013-12-21 16:19
你好:添加一个空的构造函数
DemoBean {
         private String name;
         DemoBean(){}
作者: 776699    时间: 2013-12-21 16:21
你在测试一下看看
作者: ☆星痕泪    时间: 2013-12-21 16:28
776699 发表于 2013-12-21 16:19
你好:添加一个空的构造函数
DemoBean {
         private String name;

还是没有用啊,我参考http://blog.csdn.net/benjaminzhang666/article/details/9768553他的帖子上的,我基本上和他一样,只是变量名的区别,但还是过不了。我估计我导的包有点问题了
作者: 776699    时间: 2013-12-21 16:36
package test;

public class NewBean {
        private DemoBean p=new DemoBean();

        public DemoBean getP() {
                return p;
        }

        public void setP(DemoBean p) {
                this.p = p;
        }

}
package test;

public class DemoBean {
         private String name;
         DemoBean(){}
         public DemoBean(String name) {

                         super();

                         this.name = name;

                 }

                 public String getName() {

                         return name;

                 }

                 public void setName(String name) {

                         this.name = name;

                 }   
}
package test;

import org.apache.commons.beanutils.BeanUtils;

public class ReflectBean {
        public static void main(String[] args)throws Exception {

                NewBean p2=new NewBean();
                BeanUtils.setProperty(p2, "p.name", "呵呵");
               
                System.out.println(BeanUtils.getProperty(p2, "p.name"));

        }

}

帮你测试了一下,可也通过
我的beanUtils 两个jar包地址:http://download.csdn.net/detail/u012874998/6590537
导BeanUtils时用:import org.apache.commons.beanutils.BeanUtils;
作者: 776699    时间: 2013-12-21 16:38
beanUtils连个jar包要都导入,还有,不要引入错误的包噢
作者: ☆星痕泪    时间: 2013-12-21 16:45
776699 发表于 2013-12-21 16:38
beanUtils连个jar包要都导入,还有,不要引入错误的包噢

O(∩_∩)O~,谢谢,先开始的包我是在论坛下载的,也是按照视频装的,应该诶问题感觉,不过我还是要从新弄哈。哎,本来不大的问题,都理解的,老是测试运行出问题,花了好多时间。
作者: ☆星痕泪    时间: 2013-12-21 17:10
776699 发表于 2013-12-21 16:38
beanUtils连个jar包要都导入,还有,不要引入错误的包噢

哎,盆友,你都测试过的,那么代码肯定没问题了。现在我这个还是老样子报错,应该不是代码问题。看来我要从新装哈这个eclipse,今早上开机好像就有个关于它的系统错误提示,当时没管。写代码测试没过后面就没心情看了。郁闷啊。煮饭去了,呵呵




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2