时间:2021-05-02
JSP 对 JavaBean 的支持使您能通过 Web 站点重复使用组件。JavaBean 可以是类文件或串行化 Bean,也可由 Servlet 动态生成。请使用 <BEAN> 标记来创建一个 Bean 实例,以使从 JSP 文件的任何地方都可对该实例进行访问。标记 <BEAN> 的语法为:
<bean name="Bean_name" varname="local_Bean_name" type ="class_or_interface_name" introspect="yes|no" beanName="ser_filename" create="yes|no" scope="request|session|userprofile" > <param property_name="value"> </bean>
其中的属性及其含义如下:
(1) name:用于在相应的范围(由 scope 属性指定)内查找 Bean 的名称。例如,这可能是用于存储 Bean 的会话(session)关键值。该值是分大小写的。
(2) varname:用于在 JSP 文件中的任何地方引用 Bean 的名称。该属性是可选的。缺省值为 name 属性值。该值是分大小写的。
(3) type:Bean 的类文件名。该名称用于以代码说明 Bean 实例。缺省值为 Object 类型。该值是分大小写的。
(4) Introspect:当该值为真时,JSP 处理器检查将所有的请求属性,并调用与请求属性匹配的 set 属性方法集(该属性是在 BeanInfo 中传递的)。该属性的缺省值为是。
(5) BeanName:Bean 的 .class 文件名、Bean 软件包名或包含 Bean 的串行化文件(.ser 文件)的文件名。(该名称是给 Bean 实例程序的)。仅当 Bean 不在指定的范围中,且创建属性被设置成是时,才使用该属性。该值是分大小写的。文件路径必须在应用服务器的Java 类路径中指定,除非文件在 applicationserver_root\servlets 目录下。
(6) Create:当该值为真时,如果处理器在指定的范围内没有找到 Bean,则 JSP 将创建一个 Bean 实例。缺省值为真。
(7)Scope:Bean 的生命期。该属性是可选的,其缺省值为 request 。有效值为:
request - 由 Servlet 将 Bean 设置成请求的上下文,该 Servlet 使用 JSP API 中描述的 API 调用 JSP 文件。如果 Bean 不是请求上下文的一部分,则将创建该 Bean,并将其存储在请求上下文中,除非创建属性已设置为否。
session - 如果当前对话中存在 Bean,则 Bean 已被重用。如果不存在 Bean,且创建属性设置为是,则它已被创建并作为会话的一部分存储起来。
userprofile - 由 Servlet 请求对象检索、造型成指定的类型,并进行内省的用户简要表文件。(在IBM WebShere应用服务器中,缺省类型为 com.ibm.servlet.personalization.userprofile.UserProfile)。
(8) param:属性和值配对的列表。属性是在 Bean 中用内省自动设置的。只在实例化 Bean 时,才对属性进行设置。
除了使用 <param> 属性来设置 Bean 属性外,还可以使用其它三种方法:第一,在请求包含 Bean 的 Web 页面(JSP 文件)的 URL 时,指定查询参数。必须将内省属性设置成“是”。其示例如下:http://www.myserver.com/signon.jsp?name=jones&password=d13x,其中 Bean 属性名将设置为 jones。
第二种方法,将属性指定成由 HTML <FROM> 标记提交的参数。必须将 mothod 属性设置成 post。将 action 属性设置成调用 Bean 的 JSP 文件的 URL。必须将 introspect 属性设置成“是”。其示例如下:
<form action="http://www.myserver.com/SearchSite" method="post"> <input type="text" name="Search for: "> <input type="submit"> </form>
第三种方法是使用 JSP 语法设置 Bean 属性。
在指定了 <BEAN> 标记后,就可以从 JSP 文件中的任何地方访问 Bean。这里有三种访问 Bean 属性的方法:使用 JSP scriptlet、使用 JSP 表达式、使用 <INSERT> 标记(如同 变量数据的 HTML 模板语法中所说明的)。请参阅JSP示例(DisplayData.jsp 文件)以获取三个访问 Bean 方法的每个方法示例。
4.直接插入的 Java 代码(scriptlet)
可以在 JSP 文件的 <% 和 %> 标记间直接嵌入任何有效的 Java 语言代码。这样嵌入的代码称为 scriptlet。如果没有指定 method 指令,则生成的代码将成为 service 方法的主体。用于 Servlet 的 scriptlet 可以使用一个预定义的变量集,该变量集符合基本的 Servlet、输出和输入类:
(1) request:由 javax.servlet.http.HttpServletRequest 定义的 Servlet 请求类
(2) responses:由 javax.servlet.http.HttpServletRequest 定义的 Servlet 响应类
(3) out:由 java.io.PrintWriter 定义的输出转录程序类
(4) in:由 java.io.BufferedReader 定义的输入阅读程序类
其示例如下:
<% foo = request.getParameter("Name"); out.println(foo); %>
本文源自:翔宇亭——IT乐园(http://www.biye5u.com),转载请保留此信息!声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
本文实例讲述了JSP学习之JavaBean用法。分享给大家供大家参考。具体如下:JavaBean就是一种符合某些命名方法和设计规范的Java类JavaBean可
C++primer基础之容器insert今天学习C++基础知识的时候遇到这样问题,始终出现segmentsfault。最后才发现原来是自己对“容器insert之
MySQL基础知识第一期,如何远程访问MySQL数据库设置权限方法总结,讨论访问单个数据库,全部数据库,指定用户访问,设置访问密码,指定访问主机。1,设置访问单
越来越多的人在学习SEO,学习SEO需要了解的基础知识?学习seo首先要了解seo基础知识,先打好基础,掌握好seo基础知识,优化道路才会走得顺畅和稳固。那么新
一个合格的外贸人员,不光是对专业技能要求高,还要求个人具有很强的综合能力!做为一个合格的外贸人员,首先,基础知识一定要过硬,这里的基础知识指国际贸易基础知识,比