在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. Python操作MongoDB(PyMongo模块的使用)

    #!/usr/bin/env python #coding:utf-8 # Author:   --<qingfengkuyu> # Purpose: MongoDB的使用 # Creat ...

  2. Lintcode: Unique Paths

    C++ dp 递推式:dp[i][j] = dp[i-1][j] + dp[i][j-1] 初值:dp[i][j] = 1,i=0 or j=0 空间优化:省掉一维 class Solution { ...

  3. 【树莓派】树莓派Android相关资料

    树莓派完美运行最新 Android 7.0 牛轧糖: https://linuxstory.org/android-7-0-nougat-on-raspberry-pi/ Raspberry Pi 3 ...

  4. 001-Go JSON处理

    在golang中提供的encoding/json包可以编码JSON以及解码JSON数据. 1.编码JSON 使用json包中的Marshal函数进行编码,源码如下: func Marshal(v in ...

  5. JERSEY中文翻译(第三章、模块和依赖)

    Chapter 2 Modules and Dependencencies 2.1 Java SE 兼容 所有的Jersey组建都是基于Java6开发的,所以你的Java必须是Java6以上的版本才能 ...

  6. scala VS python2 (linux or shell)

    PS:只考虑最新版的scala和python2.x,由于python3.x和python2.x区别比较大,而且主流的一些开源项目都用的python2,目前python2一点点在兼容python3 1. ...

  7. 微信小程序尝鲜一个月现状分析

    概述 曾记得在微信小程序还没有上线的时候,大家都是翘首以待.希望在张小龙,在企鹅的带领下,走出差别于原生开发的还有一条移动开发的道路,我也是一直关注着.知道1月9号,微信小程序最终对外开放了,作为第一 ...

  8. npm 主要命令

    本文主要参考自:http://www.runoob.com/nodejs/nodejs-npm.html 1.使用 npm 命令安装模块 $ npm install express var expre ...

  9. SpringBoot集成redisson分布式锁

    官方文档:https://github.com/redisson/redisson/wiki/%E7%9B%AE%E5%BD%95 20180226更新:增加tryLock方法,建议后面去掉Distr ...

  10. RabbitMQ学习笔记2-理解消息通信

    消息包含两部分:1.有效载荷(payload) - 你想要传输的数据.2.标签(lable) - 描述有效载荷的相关信息,包含具体的交换器.消息的接受兴趣方等. rabbitmq的基础流程如下: Ra ...