java bean

javaBean

满足3要素:1、含有无参数构造器的java类(含有无参数构造函数)

                       2、成员变量私有

                       3、为所有成员提供满足规则       public访问方法




--------------jsp内部-------------



<jsp:useBean   id="aa" class="类的全路径(含类名)"   scope=" page"  ></jsp:useBean>                   aa:相当于自定义的成员变量名   page

:域






<!-- 获得request中请求数据,遍历数据,判断javabean中是否存在对应属性,存在set方法设置属性 -->
<%
// 定义javabean对象
Employee employee = new Employee();


// 获得request请求数据
Map<String,String[]> parameterMap = request.getParameterMap();
// 获得map所有key ---- 对应javabean属性
Set<String> keys = parameterMap.keySet();
for(String key : keys){
// 反射判断是否存在对应属性
Class c= Class.forName("cn.itcast.vo.Employee");
try {
// 查找属性 
// TODO 如果属性不存在 会产生一个异常
Field field = c.getDeclaredField(key);
if(field==null){
// 没有该属性
continue;
}else{
// 存在对应属性 --- 找寻对应set方法
String setMethodName = "set"+Character.toUpperCase(key.charAt(0))+key.substring(1);
// 获得方法
Method m = c.getMethod(setMethodName,field.getType());
// 在请求map中获得value
String value =  parameterMap.get(key)[0];

// TODO 参数类型自动转换!!!!!!
m.invoke(employee,value);
}
}catch(Exception e){
continue;
}
}
%>


验证


<%=employee.getName() %>
<%=employee.getAge() %>


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值