在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. SQL Server如何进行时间比较的代码

    例子: datediff(dd,add_time,getdate()) not between 0 and 7 select count(*) from table where DATEDIFF ([ ...

  2. 【树莓派】【转】树莓派3装Android 6.0,支持Wi-Fi和蓝牙

    树莓派3装Android 6.0,支持Wi-Fi和蓝牙 相信对于许多树莓派初学者(包括我)来说,Android系统的确是一个不错的选择.但国内这方面资源稀缺,经本人FQ苦寻,找到了老外的树莓派Andr ...

  3. 微信小程序 - 滚动公告组件

    支持横轴.纵轴滚动. 点击下载:speaker

  4. 数组的翻转(非reverse())

    方法一: var arr = [1,2,3,4]; var arr2 = []; while(arr.length) { var num = arr.pop(); //删除数组最后一个元素并返回被删除 ...

  5. webpack4 css 文件提取 压缩 MiniCssExtractPlugin optimize-css-assets-webpack-plugin

    1.使用的插件 MiniCssExtractPlugin:https://webpack.js.org/plugins/mini-css-extract-plugin/#src/components/ ...

  6. ES5学习笔记

    转载请注明原文地址:http://www.cnblogs.com/ygj0930/p/7234053.html 一:基础 1:语法 ECMAScript 中的变量无特定的类型,定义变量时只用 var ...

  7. cocos2d-js 在线更新代码脚本 动态更新脚本程序 热更新 绕过平台审核 不需重新上架

    2014年8月15日补充 cocos2d-js 3.0 rc0 的AssetsManager有缺陷,有一些注意点:(可以阅读源代码发现) 1.旧manifest中有,但新manifest中没有的文件( ...

  8. 使用OpenNI 2获取RGBD摄像头深度信息

    NiViewer 安装好摄像头驱动和OpenNI后,在Tools文件夹中可以找到一个程序NiViewer.NiViewer的一些基本控制方法如下: 1. ESC关闭NiViewer程序 2. 右键可以 ...

  9. java new关键字

    //new关键字://1.表示创建一个对象//2.表示实例化对象//3.表示申请内存空间 在python中其实就是一个实例化的过程

  10. 利用JQuery 来操作 ListBox和ListBox内移动

    [导读]利用jquery 来操作 listbox和listbox内移动function listbox_move(listfrom,listto) { var size = $(" &quo ...