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() %>