JSP规范专门定义了三个JSP标签:
<jsp:useBean> 创建和查找JavaBean的实例对象
<jsp:setProperty> 设置JavaBean对象的属性
<jsp:getPropperty> 读取JavaBean对象的属性
1.<jsp:useBean>
用于在某个指定的域范围(application、session、request、pageContext等)中查找一个指定名称的JavaBean对象,
如果存在则直接返回该JavaBean对象的引用,如果不存在则实例化一个新的JavaBean对象并将它按指定的名称存储在指定的域范围中
<% com.milan.entity.Customer customer =(com.milan.entity.Customer)request.getAttribute("customer"); //只是找 %>
<jsp:useBean id="customer" class="com.milan.entity.Customer" scope="request" > </jsp:useBean>
<jsp:useBean>比上面java代码所写功能更强大,若找不到还会实例化一个新的对象,并存储到指定域
属性说明:
class属性用于指定JavaBean的完整类名。
id属性用于指定JavaBean实例对象的引用名称和其存储在域范围中的名称。
scope属性用于指定JavaBean实例对象所存储的域范围,其取值为page、request、session和application等四个值中的一个,默认值是page。
2.<jsp:setProperty>
用于设置JavaBean对象的属性,也就是调用JavaBean对象的setter方法
常用语法:
(1)<jsp:setProperty name="beanInstanceName" property="propertyName" value="{string | <%= expression %>}"/>
注意:若使用表达式,则表达式返回值与属性值类型相同
(2)<jsp:setProperty name="beanInstanceName" property="propertyName" [ param="parameterName" ]/>
param属性用于将JavaBean实例对象的某个属性值设置为一个请求参数值,它可以将作为字符串类型返回的请求参数值自动转换成
要设置的JavaBean属性的类型
注:<jsp:setProperty>中name属性值与JavaBean实例对象名相同
3.<jsp:getProperty>
用于读取JavaBean对象的属性,即调用JavaBean对象的getter方法,然后将读取的属性值转换成字符串,若值为null,则转换成字符串null