在JSP中使用JavaBean以后,可以实现HTML代码和Java代码的分离,是JSp更易于开发和维护。因此JavaBean成了JSP程序员必备的利器。
虽然javaBean是java类,但是它也有自己的一些特性
(1)JavaBean是一个public类
(2)JavaBean 有一个不带参数的构造方法
(3)JavaBean中的属性通过get和set方法进行操作

例如:定义个CircleArea的JavaBean用于封装圆面积的计算逻辑,以后凡是用到圆面积的计算方法均可使用该JavaBean来完成,实现了代码的重用。

CircleArea.java

package JavaBeanTest;

public class CircleArea {
        //定义两个属性 (r:半径;unit:单位)
        private double r=0;
        private String unit="";
        //无参的构造方法
        public CircleArea() {
                super();
        }
        public double getR() {
                return r;
        }
        public void setR(double r) {
                this.r = r;
        }
        public String getUnit() {
                return unit;
        }
        public void setUnit(String unit) {
                this.unit = unit;
        }
        //计算圆的面积并返回计算结果
        public String getArea(){
                return 3.14*r*r+"平方"+unit;
        }
}

在JSP中使用JavaBean。

<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
<!-- 在jSP中使用JavaBean一般遵循以下四步
(1)导入JavaBean的类
(2) 在指定范围内实例化一个JavaBean对象,如果该对象已经存在则直接引用
(3) 对Javabean的实例对象进行操作
(4)从指定范围内移除JavaBean
 -->
<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
<%@ page import="JavaBeanTest.CircleArea" %>
<jsp:useBean id="circle1" class="JavaBeanTest.CircleArea" scope="page"/>
<jsp:useBean id="circle2" class="JavaBeanTest.CircleArea" scope="request"/>
<jsp:useBean id="circle3" class="JavaBeanTest.CircleArea" scope="session"/>
<jsp:useBean id="circle4" class="JavaBeanTest.CircleArea" scope="application" />

<html>
  <head>
    <title>JavaBean在JSP中的应用</title>
  </head>
  
  <body> 
<%
//调用page范围内的JavaBean
     circle1.setR(4);
     circle1.setUnit("米");
     out.println(circle1.getArea());
     out.println("<br/><br/>");
 //调用request范围内的JavaBean
     circle1.setR(6);
     circle1.setUnit("米");
     out.println(circle1.getArea());
     out.println("<br/><br/>");
//调用session范围内的JavaBean
     circle1.setR(8);
     circle1.setUnit("米");
     out.println(circle1.getArea());
     out.println("<br/><br/>");
 //调用application范围内的JavaBean
     circle1.setR(9);
     circle1.setUnit("米");
     out.println(circle1.getArea());
     out.println("<br/><br/>");
 %>
 <hr/>
 <%
 //将circle1从page范围内移除
 pageContext.removeAttribute("circle1");
  //将circle2从request范围内移除
 request.removeAttribute("circle2");
  //将circle3从session范围内移除
 session.removeAttribute("circle1");
  //将circle4从application范围内移除
 application.removeAttribute("circle1");
  %>
  </body>
</html>

转自:http://blog.csdn.net/whatisnotnull/article/details/7956605

在JSP中如何使用JavaBean的更多相关文章

  1. java web学习总结(二十八) -------------------JSP中的JavaBean

    一.什么是JavaBean JavaBean是一个遵循特定写法的Java类,它通常具有如下特点: 这个Java类必须具有一个无参的构造函数 属性必须私有化. 私有化的属性必须通过public类型的方法 ...

  2. Javabean及其在jsp中的应用

    Javabean及其在jsp中的应用 一.Javabean简介 用作JavaBean的类必须具有一个公共的.无参数的构造方法. JavaBean的属性与普通Java类的属性的概念不一样,JavaBea ...

  3. 咸鱼入门到放弃9--jsp中使用的JavaBean

    一.什么是JavaBean JavaBean是一个遵循特定写法的Java类,它通常具有如下特点: 这个Java类必须具有一个无参的构造函数 属性必须私有化. 私有化的属性必须通过public类型的方法 ...

  4. jsp学习--JavaBean定义和在Jsp中使用JavaBean

    一.JavaBean 1.什么是JavaBean JavaBean是一个遵循特定写法的Java类,它通常具有如下特点:>>这个Java类必须具有一个无参的构造函数>>属性必须私 ...

  5. JSP内置标签 JSP中JavaBean标签 JSP开发模式 EL和JSTL快速入门

    2 JSP内置标签(美化+业务逻辑)   1)为了取代<%%>脚本形式,使用JSP标签/JSP动作,目的:与JSP页面的美化,即JSP面页都是由标签组成,不再有其它的内容   2)JSP内 ...

  6. JSP中使用的模式——JSP+Servlet+JavaBean

    上一篇博文写到模式一:JSP+JavaBean 链接地址:http://wxmimperio.coding.io/?p=155 JSP中两种模式的总结 链接地址:http://wxmimperio.c ...

  7. JSP中使用的模式——JSP+JavaBean

    模式二:JSP+Servlet+JavaBean 链接地址:http://wxmimperio.coding.io/?p=189 JSP中两种模式的总结 链接地址:http://wxmimperio. ...

  8. JavaBean在jsp中的使用

    JavaBean在Jsp中的引用: 1.用<jsp:useBean>标记: <jsp:useBean id="name" class="classnam ...

  9. 在JSP中应用JavaBean

    1. 解决中文乱码的JavaBean 在JSP页面中,处理中文字符经常会出现字符乱码的现象,特别是通过表单传递中文数据时容易产生.它的解决办法有很多,如将request的字符集指定为中文字符集,编写J ...

随机推荐

  1. GPUImage简单滤镜使用之色阶(三)

    色阶是表示图像亮度强弱的指数标准,图像的色彩丰满度和精细度是由色阶决定的.在GPUImage中GPUImageLevelsFilter提供了此功能. GPUImageLevelsFilter定义了修改 ...

  2. 【代码片段】如何使用CSS来快速定义多彩光标

    对于web开发中,我们经常都看得到需要输入内容的组件和元素,比如,textarea,或者可编辑的DIV(contenteditable) ,如果你也曾思考过使用相关方式修改一下光标颜色的,那么这篇技术 ...

  3. C语言处理文件

    C写入数据到文件 #include <stdio.h> #include <string.h> int main( ) { FILE* fd = fopen("txt ...

  4. Jenkins Xcode 证书设置错误 Code Sign error: No matching codesigning identity found: No codesigning identities

    Jenkins 集成Xcode 项目的时候在证书上遇到了问题.实际上如果在本地的话.只要Xcode工程里选择了项目就不需要重新设置证书了.jenkins会自动找到这个证书,只要在build setti ...

  5. 是否缺少对 Microsoft.CSharp.dll 和 System.Core.dll 的引用?

    错误提示 : 预定义的类型“Microsoft.CSharp.RuntimeBinder.Binder”未定义或未导入 是否缺少对 Microsoft.CSharp.dll 和 System.Core ...

  6. Android Developers:按钮

    按钮是有文本或者图标(或者文本和图标)组成,它传达用户触摸它的时候所发生的动作. 你可以在你的布局中使用三种方式创建按钮,取决于你是否想创建文本按钮,突变按钮或者两者都有: 设置文本,使用Button ...

  7. Binary Search二分法搜索C++程序

    二分法基本上学计算机的都听过,但是有人不知道的就是其实二分法是减治法的思想. 所谓减治法和分治法有一个主要差别就是减治法是减去一般,就是分治之后只需要解决原问题的一半就可以了得到全局问题的解了.所以速 ...

  8. websocket与canvas[转]

    server端还是用tomcat7的方式客户端 <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"  ...

  9. 默认的Sublime 3中没有Package Control

    https://packagecontrol.io/installation#st3 (官方) 原来Subl3安装Package Control很麻烦,现在简单的方法来了 一.简单的安装方法 使用Ct ...

  10. 提示“Resource temporarily unavailable”的原因及解决办法

    问题:Linux环境下编程时,在读串口时,出现"Resource temporarily unavailable"的错误提示. 原因:串口设置成了非阻塞模式,但是没有用select ...