当前位置: 首页 > 图文教程 > 网络编程 > JSP > CNET JSP BASIC:JSP与JavaBean

JSP
Java 创建cookie和删除cookie
jsp 从web.xml读取连接数据库的参数
jsp 不支持EL表达式,解决办法
jsp 获取客户端的浏览器和操作系统信息
struts2 session 解读
struts2 spring整合fieldError问题
jsp 生成验证码代码
搭建java WEB开发环境和应用
JSP 自定义标签
Java 区分文本中的中英文字符函数
通用JSP页面 jsp入门级文章
jsp struts1 标签实例详解
一个jdbc 测试程序代码
SSH整合中 hibernate托管给Spring得到SessionFactory
jsp SmartUpload 实现上传功能代码
jsp Unsupported encoding: gb2312 错误原因
java Struts2 在拦截器里的跳转问题
jsp 对request.getSession(false)的理解(附程序员常疏忽的一个漏洞)
Java 项目生成静态页面的代码
jdk与jre的区别 很形象,很清晰,通俗易懂

CNET JSP BASIC:JSP与JavaBean


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-02   浏览: 64 ::
收藏到网摘: n/a

虽然你可以在小型指令档里放入一大块的程式码,但是大多数的Java程式码是属於可以重复使用的元件,称为JavaBean。JavaBean就跟ActiveX控制项一样:它们提供已知的功能,并且是为了可随时重复使用的目的而设计的。

JavaBean的¤值在於它可以经由一组特性来使用,而这些特性则提供对JavaBean设定的存取。以人来作范例,此人就是JavaBean,而他的姓名,社会福利安全号码,以及住址可以是特性。对於JSP网站,基本上你是将'JavaBean'动态的连接到你的网站。

假设JavaBean是在建立网站之前建好的,你要做的第一件事是告诉JSP网页它所 要使用JavaBean.这工作可以用<jsp:useBean>标签来完成:
<jsp:useBean id="localName" class="com.jguru.Person" scope="application" />.

<jsp:useBean>标签 要你以id 属性来辨识豆子.在这里,你提供一个名称让JSP网页来辨识豆子,除了id 属性之外,你也必须告诉网页要到哪里去找这个豆子,或者是它的Java类别名称。类别属性提供如何在各式方法之中找到它,最後一个 要的元件是scope 属性.有了范围属性的帮助,你可以告诉豆子,要它为单一网页(预设)[scope="page"];为一个被请求的网页[scope="request"];为通话期[scope="session"];或为整个应用程式[scope="application"]来维护它自己的资讯.对於通话期范围,你可以很容易的维护JSP网页里的项目,例如购物车。

一但你宣告了JavaBean之後,你就可以存取它的特性来订定它。要取得一特性的值,使用<jsp:getProperty>标签。有了<jsp:getProperty>标签,你可以指定要使用的豆子名称(从useBean的id栏位),以及你要取得值的特性。接著,真正的值就会放在输出里:
<jsp:getProperty id="localName" property="name" />.

要更改JavaBean的特性,你 要使用<jsp:setProperty>标签.对这个标签,你也 要辨认豆子以及要修正的特性,除此之外,你还 要提供新值.如果命名正确,这些可以直接经由规定的格式取得:
<jsp:setProperty id="localName" property="*" />;

要从一参数取得,你必须直接命名此特性以及参数:
<jsp:setProperty id="localName" property="address" param="parameterName" />;

或是直接以名称与值来设定:
<jsp:setProperty id="localName" property="serialNumber" value="string" /> or <jsp:setProperty id="localName" property="serialNumber" value= <%= expression %> />.

有关JavaBean的最後一点:要让网络服务器可以找到JavaBean,你 要将它们的类别档案放在特别位置。对JSWDK而言,最简单的地方是在安装目录里的类别目录,例如 \jswdk-1.0.1\classes.