Day10_23——JavaBean

JavaBean的规范
1.必须要有一个默认构造器(没参的)
2.提供get/set方法,如果只有get方法,那么这个属性是只读属性
3.属性:有get/set方法的成员,还可以没有成员,只有get/set方法。属性名称有get/set方法来决定,而不是成员变量。
4.方法名称满足一点的规范,那么它就是属性!boolean类型的属性,它的读方法可以是is开头,也可以是get开头
BeanUtils的使用
内省:
先得到内省类 --> Bean信息 - -> 属性描述符 - -> 属性的get/set对应的Method - -> 就可以反射了
一般通过commons的beanutils来实现,它是依赖内省完成的
步骤:

  • 导包:

commons-beanutils.jar
commons-logging.jar
之前创建了一个Person类,有name和age两个属性

import java.util.HashMap;
import java.util.Map;
import org.apache.commons.beanutils.BeanUtils;
import org.junit.Test;
import cn.itcast.commons.CommonUtils;
public class BranUtilsDemo_01 {
@Test
    public void fun01() throws Exception {
        String className = "Demo_01.Person";
        Class c = Class.forName(className);
        Object bean = c.newInstance();
        
        BeanUtils.setProperty(bean, "name", "张三");
        BeanUtils.setProperty(bean, "age", "21");
        
        System.out.println(bean);
    }
    @Test
    public void fun2(){
        Map map = new HashMap();
        map.put("name", "lisi");
        map.put("age", "20");
         
        Person p = CommonUtils.toBean(map, Person.class);
        System.out.println(p);
    }
}

Jsp中与JavaBean相关的标签(基本用不上)

  • :创建或查询bean
  • // page后面写要作用的域
  • :设置名字为user1的JavaBean的uesrname属性值为admin。
  • :获取名字为user1的JavaBean的username属性值。

你可能感兴趣的:(Day10_23——JavaBean)