public class Employee implements DynaBean  {

private String  firstName="李";
    private String lastName;
    public Employee() {
    } ;  
    
     public String getFirstName() {
        return firstName;
    }
     public void setFirstName(String firstName) {
         this.firstName=firstName;
     }
     public String getLastName() {
        return lastName;
    }
     public void setLastName(String lastName){
         this.lastName=lastName;
     }
     private Date hireDate;
     public Date getHireDate(){
         return hireDate;
     }
     public void setHireDate(Date hireDate){
         this.hireDate=hireDate;
     }
     private boolean manager;
     public boolean isManager(){
         return manager;
     }
     public void setManager(boolean manager){
         this.manager=manager;
     }
     public String getFullName(){
         return lastName+firstName;
     }
     
     public Employee getEmployee(int index) {
        return new Employee();
    }
     //private Address address;
     public Address getAddress(String home) {
        return new Address();
    }

}

public class EmployeeTest {

//    public static void main(String[] args) throws Exception{
//        Employee employee=new Employee();
//        PropertyUtils.setSimpleProperty(employee, "firstName", "李");
//        PropertyUtils.setSimpleProperty(employee, "lastName", "旭丹");
//        System.out.println(PropertyUtils.getSimpleProperty(employee, "firstName")+"-"+PropertyUtils.getSimpleProperty(employee, "lastName"));
//    }
    
//    public static void main(String[] args) throws Exception {
//        Employee employee=new Employee();
//        int index=3;
//        String emp="employee["+index+"]";
//        //PropertyUtils.setIndexedProperty(employee, num, new Object[]{1,2,3});
//        Employee e=(Employee) PropertyUtils.getIndexedProperty(employee, emp);
//        System.out.println(e);
//    }
    
//    public static void main(String[] args) throws Exception {
//        Employee employee=new Employee();
//        int index=3;
//        String emp="employee";
//        Employee e=(Employee) PropertyUtils.getIndexedProperty(employee, emp,index);
//        System.out.println(e);
//    }
    
//    public static void main(String[] args) throws Exception {
//        Employee employee=new Employee();
//        Address address=new Address();
//        PropertyUtils.setMappedProperty(employee, "address", "address", address);
//        //System.out.println(PropertyUtils.getMappedProperty(employee, "address()"));
//    }
    
//    public static void main(String[] args) throws Exception {
//        Employee emp=new Employee();
//        String city=(String) PropertyUtils.getNestedProperty(emp, "address(home).city");
//        System.out.println(city);
//    }
    
//    public static void main(String[] args) throws Exception {
//        Employee emp=new Employee();
//        String city=(String) PropertyUtils.getProperty(emp, "employee[3].address(home).city");
//        System.out.println(city);
//    }
    
//    public static void main(String[] args) {
//        DynaBean emp=new Employee();
//        System.out.println(emp.get("firstName"));
//        System.out.println(emp.get("address", "home"));
//        System.out.println(emp.get("emp", 3));
//    }
    
    public static void main(String[] args) throws Exception {
        DynaProperty[] pros=new DynaProperty[]{
                new DynaProperty("address",com.dan.entity.Address.class),
                new DynaProperty("employee",com.dan.entity.Employee[].class),
                new DynaProperty("firstName",String.class)
        };
        BasicDynaClass dynaBean=new BasicDynaClass("employee",null,pros);
        DynaBean dyna= dynaBean.newInstance();
        dyna.set("firstName", "李");
        System.out.println(dyna.get("firstName"));
    }

}

beanutils设置参数和获取参数的更多相关文章

  1. Vue router中携带参数与获取参数

    Vue router中携带参数与获取参数 携带参数 query方式,就是?+&结构,例如/login?id=1 <router-link :to="{ name:'login' ...

  2. Spring MVC url提交参数和获取参数

    [转载:http://blog.csdn.net/mahoking] 普通URL提交参数         该格式url为:url.do?param1=mahc&param2=8888.00 需 ...

  3. angular4.0路由传递参数、获取参数最nice的写法

    研究ng4的官网,终于找到了我想要的方法.我想要的结果是用'&'拼接参数传送,这样阅读上是最好的.否则很多'/'的拼接,容易混淆参数和组件名称.一般我们页面跳转传递参数都是这样的格式:http ...

  4. 页面间传递前端请求参数和获取参数:Model model,HttpServletRequest request, ModelMap map参数使用与区别

    Model model, HttpServletRequest request, ModelMap map声明变量 一.下面的方法是需要将请求发过来的数据(或者说参数)传递到重定向的页面/转发的页面的 ...

  5. SpringMVC传递参数和获取参数以及返回数据

    1.传递form表单,参数接收到对象,name和对象属性对应上即可:   2.springmvc不能直接通过form表单传递多个对象的list集合,要么采用ajax传递,要么采用封装了list属性的b ...

  6. setCharacterEncoding 是在request.getParameter获取参数之前 设置request的编码格式 一步到位

    setCharacterEncoding 是在request.getParameter获取参数之前 设置request的编码格式 一步到位

  7. WebApi Post 后台无法获取参数的解决方案

    事件回放: 之前一段时间,公司里前端用的Angularjs 发送http请求也是用的ng的组件,后台是.Net的WebApi 前端 var data = { PArgs: { PageIndex: 0 ...

  8. qmake的使用(可设置c编译器flag参数)

    本文由乌合之众 lym瞎编,欢迎转载 my.oschina.net/oloroso***还是先说一下当前的系统环境:Ubuntu 14.04 + Qt5.4如果没有安装过QT,可以安装下面几个qt软件 ...

  9. Swift语言中为外部参数设置默认值可变参数常量参数变量参数输入输出参数

    Swift语言中为外部参数设置默认值可变参数常量参数变量参数输入输出参数 7.4.4  为外部参数设置默认值 开发者也可以对外部参数设置默认值.这时,调用的时候,也可以省略参数传递本文选自Swift1 ...

随机推荐

  1. JavaEE(15) - JPA实体继承

    1. 实体继承映射的三种策略 #1. 整个类层次对应一张表 #2. 连接子类 #3. 每个具体类对应一张表 2. 使用抽象实体 3. 使用非实体父类 4. 重定义子类实体的外键列 ---------- ...

  2. java多线程学习(两)——创建一个线程

    一个.java创建两个线程的方法 1.从java.lang.Thread派生一个新类线程类,其覆盖run()方法 2.实现Runnable接口.重载Runnable接口中的run()方法. 使用Thr ...

  3. 一个由proguard与fastJson引起的血案(转)

    更新微信sdk导致ComposeData中的内部类ComposeDataSender方法被混淆 根本原因,fastjson使用姿势不对. 问题描述: 一个发件人列表里,应当呈现的数据(这里命名为Com ...

  4. MFC属性页对话框

    属性页对话框 分类 分页和引导 类 CPropertyPage-父亲CDialog类别,所谓的属性页或网页对话框. CPropertySheet-父类是CWnd,称为属性表单. 一个完整的属性页对话框 ...

  5. springMVC注解优化

    本文是本人在学习网络视频的过程中的一些总结. 本文是对关于一些springMVC在使用注解的优化. 使用以下的标签,会自己主动引入Annotation的配置 <mvc:annotation-dr ...

  6. c++指针存储应用程序和释放内存的问题

    C++中指针在new和delete操作的时候对内存堆都做了些什么呢.下面解: 1.指针的new操作: 指针在new之后,会在内存堆中分配一个空间.而指针中存放的是这个空间的地址.如: void mai ...

  7. 十天学Linux内核之第三天---内存管理方式

    原文:十天学Linux内核之第三天---内存管理方式 昨天分析的进程的代码让自己还在头昏目眩,脑子中这几天都是关于Linux内核的,对于自己出现的一些问题我会继续改正,希望和大家好好分享,共同进步.今 ...

  8. polay定理总结

    参考资料:url=YveSCnlx_dlXo4oGjE8w3_2QRObRXvXMbix81ppCxBGqBswxffwDN9frzY5xxaKf7GgEMY8K93JTPEhkBzY66XOaN0G ...

  9. 4.事务提交过程,交易的基本概念,Oracle交易周期,保存点savepoint,数据库的隔离级别

     事务提交过程 事务 基本概念 概念:一个或者多个DML语言组成 特点:要么都成功.要么都失败 事务的隔离性:多个client同一时候操作数据库的时候.要隔离它们的操作, 否则出现:脏读  不可反 ...

  10. dedeCMS中单独调用子栏目模板和子栏目的文章时修改源代码给channel和chanenartllist加上limit

    在网站文件中找到include-taglib-chanel.lib.php,和chaneartllist.lib.php 下载用php的IDE打开, chanel.php加入limit属性修改如下 & ...