(1)JavaBean就是符合某种特定的规范的Java类。使用JavaBean的好处是解决代码重复编写,减少代码冗余,功能区分明确,提高了代码的维护性。
(2)jsp动作元素
SP动作元素(action elements),动作元素为请求处理阶段提供信息。动作元素遵循XML元素的语法,有一个包含元素名的开始标签,可以有属性、可选的内容、与开始标签匹配的结束标签。
(3)JSP动作元素分类
3.1:第一类是与存取JavaBean有关的
(1)<jsp:useBean>
在JSP页面中实例化或者在指定范围内使用Javabean
语法:
<jsp:useBean id="Javabean实例名" class="java类名" scope="作用范围" />
实例
<jsp:useBean id="myUser" class="com.javaben.test.User" scope="page" />
<jsp:setProperty>
(2)给已经实例化的Javabean对象的属性赋值,一共有四种形式。
<jsp:setProperty name="Javabean实例名" property="*" />
(跟表单关联)
<jsp:setProperty name="Javabean实例名" property="Javabean属性名" />(跟表单关联)
<jsp:setProperty name="Javabean实例名" property="Javabean属性名" value="BeanValue" />(手动设置)
<jsp:setProperty name="Javabean实例名"
roperty="propertyName" param="request对象中的参数名" />
(跟request参数关联,param属性的值可以为超链接方式提交的参数名)
<jsp:getProperty>
(3)获取指定Javabean对象的属性值。
<jsp:getProperty name="Javabean实例名" property="属性名" />
实例
<jsp:useBean id="myUser" class="com.javaben.test.User" scope="page" />
ID:<jsp:getProperty property="id" name="myUser"/> <br>
用户名:<jsp:getProperty property="name" name="myUser"/>
3.2第二类是JSP1.2就开始有的基本元素
<jsp:include>
语法:
<jsp:include page="URL" flush="true|false" />
page表示要包含的页面,flush表示被包含的页面是否从缓冲区读取
include指令和include动作的比较:
页面内容经常变化时,更适合使用include动作;
页面内容不经常变化时,更适合使用include指令;
<jsp:forward>
语法:
<jsp:forward page="URL" />
等同于
request.getRequestDispatcher("url").forward(req,resp);
<jsp:param>
语法:
<jsp:param name="参数名" value="参数值">
常常与<jsp:forward>一起使用,作为其的子标签。
实例
<jsp:forward page="login.jsp">
<jsp:param value="张三" name="userName"/>
<jsp:param value="1234" name="password"/>
</jsp:forward>
<jsp:plugin>
<jsp:params>
<jsp:fallback>
3)第三类主要与JSP Document有关
<jsp:root>
<jsp:declaration>
<jsp:scriptlet>
<jsp:expression>
<jsp:text>
<jsp:output>
4)第四类主要是用来动态生成XML元素标签的值
<jsp:attribute>
<jsp:body>
<jsp:element>
5)第五类主要是用在Tag File中
<jsp:invoke>
<jsp:dobody>
3、JavaBean四个作用域范围
使用useBean的scope属性可以用来指定Javabean的作用范围。
page:仅在当前页面有效
request:可以通过HttpRequest.getAttribute()方法取得Javabean对象
session:可以通过HttpSession.getAttribute()方法取得Javabean对象
application:可以通过application.getAttribute()方法取得Javabean对象