JSP-07-使用JavaBean封装数据
7.1 常命包名
Dao 包中的接口(NewsDao)以及类(NewsDaoImpl)注意负责和数据操作相关的事情。
Service 包中的接口和类对dao的方法进行封装和调用,注意负责和业务逻辑相关的操作。
7.2 JavaBean的作用
封装业务、封装数据
7.3 JSP 页面显示
Ø <jsp:useBean>
<jsp:useBean id=”BeanName” class=”BeanClass” scope=”page/session/application/requeset” />
id: 专用于创建Bean的引用名
class 指定Bean的类
scope 指定Bean的范围,默认情况下,scope被设置为page.
范围 |
说明 |
page |
Bean 只能在使用页面时使用。当加载新页面时,就会将其销毁 |
request |
Bean 在用户向其发送请求时存在 |
session |
Bean 一直存在于会话中,直至其终止或被删除为止 |
application |
Bean 在整个应用程序中均可使用 |
JavaBean 应当具有如下要求:
是一个公共类
具有不带任何参数的公有构造函数
具有 get() 和 set() 方法,以便读取和写入 Bean的属性
Ø <jsp:setProperty>
<jsp:setProperty name=”BeanAlias” property=”PropertyName” value=”Value” param=”Parameter” />
其中:
name |
userBean中使用的Bean的ID |
Property |
指定要位置设置值的Bean的属性名称 |
value |
显示值 |
param |
用于输入并给属性赋值的HTML标签 (表单元素名) |
注: param 属性不能和 value 属性一起使用
Ø <jsp:getProperty>
<jsp:getProperty name=”BeanAlias” property=”PropertyName” />
其中:
Name |
useBean中指定的Bean的ID |
property |
指定要从中检索的属性名称 |
Ø <jsp:include>
<jsp:include page=”weburl” flush=”true” />
其中:
page |
要嵌入当前页面的网址 |
flush |
为ture表示在嵌入其它响应前清空存储在缓冲区中的数据 |
静态包含和动态包含的区别:
静态包含:
<%@include %> 将被包含页面的结构包含进来,先包含,在处理。 可以理解为先将其位置的文件内容复制到这个位置。
具体使用:
动态包含:
<jsp:include>,将被包含的页面结果包含进来,先处理,在包含。
具体使用:
Ø <jsp:param>
为当前JSP页面嵌入的页面设置参数,可与 include动作同时使用
<jsp:include page=”weburl” flush=”true” >
<jsp:param name=”ParamName” value=”ParamValue” />
</jsp:include>
其中:
name: 为被嵌入页面中参数的名称
value: 指定参数的值
Ø <jsp:forward>
用于将用户的请求重定向到一个HTML文件、另一个JSP页面或Servlet
1. request.getRequestDispatcher().forward() 转发 服务器端
2. response.sendRedirect() 重定向 客户端
3.<jsp:forward page=”URL”> 服务器端