在JSP中应用JavaBean的标签来操作简单类,则此类必须满足如下要求:
(1)所有的类必须放在包中,在Web中没有包的类是不存在的;
(2)所有的类必须声明为public class,这样才能被外部所访问;
(3)类中所有的属性都必须封装,即使用private声明;
(4)封装的属性如果需要被外部所操作,则必须编写对应的setter、getter方法;
(5)一个JavaBean中至少存在一个无参构造方法,此方法为JSP中的标签所使用。
使用方法:
(1)在JSP中使用<%@ page import %>指令导入所需要的包/类,然后在JSP页面中能够实例化类的对象,调用对象的方法;
(2)使用<jsp:useBean>指令:
<jsp:useBean id="实例化对象名称" scope="范围" class="包.类名称/>
<jsp:setProperty>标签标示为JavaBean中的属性设置内容,其中一共有两个属性:
(1)name:对应着<jsp:useBean>中声明的id属性,表明使用指定的JavaBean;
(2)property:表示要操作的属性,”*“表示自动匹配。在自动匹配时,简单点理解,实际上匹配的是参数名称(这里的参数名称是通过表单控件指定的)是否与属性的名称相符合,如果符合则会自动调用对应的setter进行内容的设置。
<jsp:setProperty name="实例化对象的名称(id)” property="*"/>
<jsp:setProperty name="实例化对象的名称(id)" property="属性名称" />
<jsp:setProperty name="实例化对象的名称(id)" property="属性名称" param="参数名称" />
<jsp:setProperty name="实例化对象的名称(id)" property="属性名称" value="内容" />
<jsp:getProperty>,此标签会自动调用JavaBean中的getter()方法,与<jsp:setProperty>相比,它只有一种语法格式:
<jsp:getProperty name="实例化对象的名称(id)" property="属性名称" />
JavaBean的删除
JavaBean虽然使用<jsp:useBean>标签进行创建,但其操作依靠的仍然是4种属性范围,如果一个JavaBean不再使用的话,则可以直接使用4种属性范围的removeAttribute()方法进行删除:
pageContext.removeAttribute(JavaBean名称);
request.removeAttribute(JavaBean名称);
session.removeAttribute(JavaBean名称);
application.removeAttribute(JavaBean名称);