JavaBean简介
JavaBean是使用Java语言开发的一个可重用的组件,在JSP的开发中可以使用JavaBean减少重复代码,使整个JSP代码的开发更简洁。JSP搭配JavaBean来使用,有以下的优点:
1.可将HTML和Java代码分离,这主要是为了日后维护的方便。如果把所有的程序代码(HTML和Java)写到JSP页面中,会使整个程序代码又多又复杂,造成日后维护上的困难。
2.可利用JavaBean的优点。将日常用到的程序写成JavaBean组件,当在JSP要使用时,只要调用JavaBean组件来执行用户所要的功能,不用再重复写相同的程序,这样以来也可以节省开发所需的时间。
JavaBean的定义规范
(1)JavaBean是一个public的类。
(2)要实现Serializable接口。
(3)要有一个默认无参构造函数。
(4)属性变量为protected或private特性。
(5)设置和获取属性时,使用setXXX()和getXXX()方法.
(**注意:public interface Serializable类通过实现 java.io.Serializable 接口以启用其序列化功能。未实现此接口的类将无法使其任何状态序列化或反序列化。可序列化类的所有子类型本身都是可序列化的。序列化接口没有方法或字段,仅用于标识可序列化的语义。)
创建JavaBean
package pb; //必须带有包名,即JavaBean必须放在包内
public class SimpleBean {
public SimpleBean() { //默认的无参构造函数
}
private String name;
private String password;
private int age;//JavaBean为JSP页面上的元素开辟空间,根据需要赋值、传值
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getPassword() {//必须使用getter和setter方法访问属性,除非属性是只读或只写的
return password;
}
public void setPassword(String password) {
this.password = password;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
}
直接使用JSP的request对象等进行页面间数据传递,是嵌入式的,对于大型程序代码会比较繁杂,难以维护。组件技术则便于代码维护和重用
JavaBean的使用
事实上来说,JavaBean其实就是满足了JavaBean写法的普通类,因此我们在使用JavaBean时可以将起当作普通类使用。
但并不仅仅只有把JavaBean当作普通类使用这一种方法。另一种方法就是使用jsp动作标记。
1. < jsp:useBean >动作标记
2. < jsp:setProperty >动作标记
语法一:request请求中的所有参数被赋值给bean中与参数同名的属性
<jsp:setproperty name=“beanName” property="*"/>
语法二:将request请求中与这个属性同名参数赋值给这个属性
<jsp:setProperty name=“beanName” property=“属性名” />
语法三:将param中的参数赋值给property指定名称的bean属性
<jsp:setProperty name=“beanName” property="属性名"param=“ParamName” />
语法四:将value值赋值给bean属性
<jsp:setProperty name=“beanName” property=“属性名” value="str | <%=表达式%>" />
这么多语法不一定非得全部掌握,只要有一两种能够熟悉使用就行,其他的能看懂就好了。
3. < jsp:getProperty >动作标记
getProperty动作标记用来获得指定JavaBean属性的值,将其转换成字符串,并显示在相应的位置上。
语法形式为:
<jsp:getProperty name=“BeanName” property=“属性名” />
或
<jsp:getProperty name=“BeanName” property=“属性名”>
JavaBean的使用还是需要理解和练习的,作为程序员还有很长的路要走。