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. 应用ExcelPackage导出Excel

    前阵子工作需要,要实现从数据库中导出数据到Excel.老套路 先去百度上查阅资料,发现了以下几种方法: 1:将DataGrid控件中的数据导出Excel 2:将dataview导出excel 3:从网 ...

  2. 十天学Linux内核之第十天---总结篇(kconfig和Makefile & 讲不出再见)

    原文:十天学Linux内核之第十天---总结篇(kconfig和Makefile & 讲不出再见) 非常开心能够和大家一起分享这些,让我受益匪浅,感激之情也溢于言表,,code monkey的 ...

  3. 十天学Linux内核之第九天---向内核添加代码

    原文:十天学Linux内核之第九天---向内核添加代码 睡了个好觉,很晚才起,好久没有这么舒服过了,今天的任务不重,所以压力不大,呵呵,现在的天气真的好冷,不过实验室有空调,我还是喜欢待在这里,有一种 ...

  4. Git 常用命令手记 及 Github协同流程(转)

    符号约定俗成:<xxx> 自定义内容xxx:[xxx] xxx为可选项:[<xxx>] 自定义内容xxx且为可选项. 说明/备注 命令 备注 保存更新 git add [-i] ...

  5. git branch(转)

    git branch    git branch 不带参数:列出本地已经存在的分支,并且在当前分支的前面加“*”号标记,例如:   #git branch* master   newbranch gi ...

  6. 馋-c语言的规则

    在记者采访过程,有着c的认识的情况,有时会被问到有关字符搭配以及运算先后顺序的问题,比方a+++++b的值.++i+++i+++i+i的值等类似的,这都属于c的符号方面的问题.那么如何才干轻而易举的去 ...

  7. 在四川大学的第二个冠军游戏在线编程:Peter的X

    四川大学线下编程比赛第二题:Peter的X 公布公司: 有 效 期: CSDN 2014-09-27至2015-09-26 难 度 等 级: 答 题 时 长: 编程语言要求: 120分钟 C C++ ...

  8. 【github课程】创建github仓库和库创建一个版本号,并添加到存储库文件的版本号

    首先,需要登录github注册一个帐号:https://github.com/ 注册帐号登录后,.在右上角,"新仓库": 然后会出现例如以下的界面: 仅仅须要输入仓库的名称,描写叙 ...

  9. Hadoop之环境搭建

    初学Hadoop之环境搭建   阅读目录 1.安装CentOS7 2.安装JDK1.7.0 3.安装Hadoop2.6.0 4.SSH无密码登陆 本文仅作为学习笔记,供大家初学Hadoop时学习参考. ...

  10. 【转】传递给Appium服务器以开启相应安卓Automation会话的Capabilities的几点说明

    原文地址:http://blog.csdn.net/zhubaitian/article/details/39431307 Desired Capabilities是由客户端发送给Appium服务器端 ...