内蒙古java团队

j2se,j2ee开发组
posts - 139, comments - 212, trackbacks - 0, articles - 65
  BlogJava :: 首页 :: 新随笔 :: 联系 :: 聚合  :: 管理

在JSP页面中的应用JavaBean [转]

Posted on 2010-04-15 23:04 帅子 阅读(173) 评论(0)  编辑  收藏 所属分类: J2EE技术专区

JavaBean 是一种基于 Java的软件组件。JSP 对于在 Web 应用中集成 JavaBean 组件提供了完善的支持。这种支持不仅能缩短开发时间(可以直接利用经测试和可信任的已有组件,避免了重复开发),也为 JSP 应用带来了更多的可伸缩性。

JavaBean 组件可以用来执行复杂的计算任务,或负责与数据库的交互以及数据提取等。如果我们有三个 JavaBean ,它们分别具有显示新闻、股票价格、天气情况的功能,则创建包含所有这三种功能的 Web 页面只需要实例化这三个 Bean ,使用 HTML 表格将它们依次定位就可以了。

为说明在 JSP 环境下 JavaBean 的应用,我们创建了一个名为 TaxRate Bean 。它有两个属性,即 Product(产品)和 Rate (税率)。两个 set 方法分别用来设置这两个属性,两个 get 方法则用于提取这两个属性。在实际应用中,这种 Bean 一般应当从数据库提取税率值,此处我们简化了这个过程,允许任意设定税率。下面是这个 Bean 的代码清单:

1.            package tax;   

2.               public class TaxRate {   

3.               String Product;   

4.               double Rate;   

5.               public TaxRate() {   

6.                this.Product  =  "A001" ;   

7.                this.Rate  =  5 ;   

8.               }   

9.               public void setProduct (String ProductName) {   

10.            this.Product  =  ProductName ;   

11.           }   

12.           public String getProduct() {   

13.           return (this.Product);   

14.           }   

15.           public void setRate (double rateValue) {   

16.            this.Rate  =  rateValue ;   

17.           }   

18.           public double getRate () { 

19.           return (this.Rate); 

20.           } 

21.           } 

JSP 页面中应用上述 Bean 要用到 < jsp:useBean> 标记。依赖于具体使用的 JSP 引擎的不同,在何处配置以及如何配置 Bean 的方法也可能略有不同。本文将这个 Bean .class 文件放在 c:.0INF目录下,这里的 tax 是一个专门存放该 Bean 的目录。下面是一个应用上述 Bean 的示例页面:

22.          <   HTML>    

23.            <   BODY>    

24.            <  %@ page  language = "java"  % >    

25.            <   jsp:useBean   id = "taxbean"   scope = "application"   class = "tax.TaxRate"   />    

26.            <  % taxbean.setProduct("A002");   

27.           taxbean.setRate(17);   

28.           % >    

29.         使用方法  1    <   p>    

30.         产品  :  <  %= taxbean.getProduct() % >   <   br>    

31.         税率  :  <  %= taxbean.getRate() % >    

32.          <   p>    

33.          <  % taxbean.setProduct("A003");   

34.          taxbean.setRate(3);   

35.          % >    

36.          <   b>   使用方法  2    <  /b >   <   p>    

37.         产品  :  <   jsp:getProperty   name = "taxbean"   property = "Product"   />    

38.          <   br>    

39.         税率  :  <   jsp:getProperty   name = "taxbean"   property = "Rate"   />    

40.          <  /BODY >    

41.          <  /HTML >  

< jsp:useBean > 标记内定义了几个属性,其中 id 是整个 JSP 页面内该 Bean 的标识, scope 属性定义了该 Bean 的生存时间, class 属性说明了该 Bean 的类文件(从包名开始)。

这个 JSP 页面不仅使用了 Bean set get 方法设置和提取属性值,还用到了提取 Bean 属性值的第二种方法,即使用 < jsp:getProperty > 标记。 < jsp:getProperty > 中的 name 属性即为 < jsp:useBean > 中定义的 Bean id ,它的 property 属性指定的是目标属性的名字。

事实证明,Java Servlet 是一种开发 Web 应用的理想构架。JSP Servlet 技术为基础,又在许多方面作了改进。 JSP 页面看起来象普通 HTML 页面,但它允许嵌入执行代码,在这一点上,它和 ASP 技术非常相似。利用跨平台运行的 JavaBean 组件,JSP 为分离处理逻辑与显示样式提供了卓越的解决方案。


只有注册用户登录后才能发表评论。


网站导航: