本文主要是介绍JavaBean 和内省,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
JavaBean和内省(了解)有个工具类直接完成数据封装。
private String password;
public void setUsername(){
}
public void getUsername(){
}
public void getPassword(){
}
public void getInfo(){
}
}
<jsp:setProperty>
<jsp:getProperty>
<jsp:useBean id="u" class="cn.itcast.vo.User"></jsp:useBean>
<jsp:setProperty property="username" name="u"/>
<jsp:setProperty property="password" name="u"/>
或者
<jsp:setProperty property="*" name="u"/>
<jsp:getProperty property="username" name="u"/>
<jsp:getProperty property="password" name="u"/>
* 内省 (Introspector)
@Test
public void run() throws Exception{
User user = new User();
// 获取类的信息
BeanInfo info = Introspector.getBeanInfo(user.getClass());
// 获取属性的描述
PropertyDescriptor [] pds = info.getPropertyDescriptors();
// 循环遍历,获取属性的名称
for (PropertyDescriptor pd : pds) {
// System.out.println(pd.getName());
if(!"class".equals(pd.getName())){
// 获取写的方法
Method m = pd.getWriteMethod();
m.invoke(user, "admin");
}
}
System.out.println(user.getUsername());
System.out.println(user.getPassword());
}
* 导入jar包
* commons-beanutils-1.8.3.jar
* commons-logging-1.1.1.jar
* 默认把字符串转换成日期类型
* 编写一个类,实现Converter接口。重写该方法。把字符串转换日期。
* 在封装数据之前进行注册。ConvertUtils.register(Converter converter, Class clazz) Date.class
1. 什么是JavaBean?
定义:遵循特定写法的java类,如下:
1)必须有一个无参的构造方法
2)属性私有化
3)私有化的属性必须通过public类型的方法暴露给其它程序,并且方法的命名也必须遵守一定的命名规范。
例如:private String username;
public class User(){
private String password;
public void setUsername(){
}
public void getUsername(){
}
public void getPassword(){
}
public void getInfo(){
}
}
作用:封装数据。
2. 把数据封装到JavaBean中(JSP页面中完成的)
<jsp:useBean><jsp:setProperty>
<jsp:getProperty>
<jsp:useBean id="u" class="cn.itcast.vo.User"></jsp:useBean>
<jsp:setProperty property="username" name="u"/>
<jsp:setProperty property="password" name="u"/>
或者
<jsp:setProperty property="*" name="u"/>
<jsp:getProperty property="username" name="u"/>
<jsp:getProperty property="password" name="u"/>
* 内省 (Introspector)
@Test
public void run() throws Exception{
User user = new User();
// 获取类的信息
BeanInfo info = Introspector.getBeanInfo(user.getClass());
// 获取属性的描述
PropertyDescriptor [] pds = info.getPropertyDescriptors();
// 循环遍历,获取属性的名称
for (PropertyDescriptor pd : pds) {
// System.out.println(pd.getName());
if(!"class".equals(pd.getName())){
// 获取写的方法
Method m = pd.getWriteMethod();
m.invoke(user, "admin");
}
}
System.out.println(user.getUsername());
System.out.println(user.getPassword());
}
* 导入jar包
* commons-beanutils-1.8.3.jar
* commons-logging-1.1.1.jar
* 默认把字符串转换成日期类型
* 编写一个类,实现Converter接口。重写该方法。把字符串转换日期。
* 在封装数据之前进行注册。ConvertUtils.register(Converter converter, Class clazz) Date.class
这篇关于JavaBean 和内省的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!