`
starkwen
  • 浏览: 9974 次
文章分类
社区版块
存档分类
最新评论

javaBean的使用范围

 
阅读更多

转载http://hi.baidu.com/g882/blog/item/38b3903418d7aa44241f14f1.html

<jsp:useBean>中的scope属性:用来设定JavaBean存在的范围:

1: page;

2: request;

3: session;

4: application

利用一个计数器说明,用一个JavaBean保存访问量,在JSP页面中调用。

首先建立一个SampleBean1.java 代码如下:

package ch04;
import java.io.*;

public class SampleBean1 {
public SampleBean1(){
}
   private int num=0;
   public void setNum(int num)
   {
    this.num=num;
   }
   public int getNum()
   {
    num++;
    return num;
   }
}

我们来看一下另外的知识点(一):

page范围:生命周期只能在一个页面里,只能在一个页面里存取该JavaBean,重新刷新页面时会将原来的JavaBean实例删除掉,产生一个新JavaBean实例.

<jsp:useBean id="..." class="..." scop="page">

JSP程序:Sample1.jsp

<%@ page language="java" contentType="text/html;charset=gb2312"%>
<jsp:useBean id="splBean" class="ch04.SampleBean1" scope="page"/>
<html>
<head>
<title>page范围JavaBean</title>
</head>
<body>

<center><p><font size="5">访问人次:<%=splBean.getNum()%><strong></strong></font></p></center>
</body>
</html>

运行结果可知:无论刷新页面还是新建页面访问人数总是1,不会改变,说明page的存在范围只在当前页面有效

知识点(二):

request范围(与page范围有些类似只是比page范围大一些):与request对象有很大关系,存取范围除了整个页面外,还包括动作元素<jsp:include>和<jsp:forword>包含的页面(也就是说它能在include和forword页面中生效),即原页面和包含的页面都可以访问原来产生的JavaBean实例。

<jsp:useBean id="..." class="..." scop="request">

JSP程序:Sample2.jsp 和Sample3.jsp

<%@ page language="java" contentType="text/html; charset=gb2312"%>
<jsp:getProperty name="splBean" property="num"/>

在这个程序当中getProperty标签的作用和调用Bean的get()方法是一样的。现在就是去调用的getName()方法是num加一

<%@ page language="java" contentType="text/html;charset=gb2312"%>
<jsp:useBean id="splBean" class="ch04.SampleBean1" scope="request"/>
<html>
<head>
<title>page范围JavaBean</title>
</head>
<body>

<%=splBean.getNum()%>

<center><p><font size="5">访问人次:<jsp:include page="Sample2.jsp"flush="true"/><strong></strong></font></p></center>
</body>
</html>

这个程序里在include中将转入到Sample2.jsp页面即又调用了一次getNum();所以这个运行的时候访问人次2,刷新就没有用了。它也只能在当前页面和包括include和forword中有效。

知识点(三):

session范围:生命周期在一个链接里,可以在一个连接里访问该JavaBean(当用户使用浏览器访问某个网页时,就进行了一场连接,同时创建了一个代表该链接的session对象

<jsp:useBean id="..." class="..." scop="session">

JSP:程序:Sample4.jsp

<%@ page language="java" contentType="text/html;charset=gb2312"%>
<jsp:useBean id="splBean" class="ch04.SampleBean1" scope="session"/>
<html>
<head>
<title>page范围JavaBean</title>
</head>
<body>

<center><p><font size="5">访问人次:<%=splBean.getNum()%><strong></strong></font></p></center>
</body>
</html>

运行结果:当刷新一次页面的时候访问人次加1,但是当我们打开另外一个浏览器的时候它将重新计数。

知识点(四):

application范围:生命周期最长,只要Web服务器不重启,JavaBean就永远运行在服务器中,所以任何页面都可以使用该JavaBean 实例。

<jsp:useBean id="..." class="..." scop="session">

JSP:程序:Sample5.jsp

<%@ page language="java" contentType="text/html;charset=gb2312"%>
<jsp:useBean id="splBean" class="ch04.SampleBean1" scope="application"/>
<html>
<head>
<title>page范围JavaBean</title>
</head>
<body>

<center><p><font size="5">访问人次:<%=splBean.getNum()%><strong></strong></font></p></center>
</body>
</html>

运行结果:当刷新页面和打开另外一个页面的时候都会以原来的那个数加一;只有当服务器关闭的时候才停止运行。

缺点:常驻内存,消耗资源,重启服务器后清零。

用一个实例来综合运用JavaBean的作用范围

设计个人所得税计算器

个人所得税计算公式:
当月应缴个人所得税=(当月总收入-当地个人所得税起征额)×适合税率-速算扣除数

分享到:
评论

相关推荐

    JavaBean.ppt

    JavaBean的引入 什么是JavaBean? JavaBean的编写和保存 JavaBean的调用 JavaBean在JSP中的数据传输 JavaBean使用范围 JavaBean与文件操作 JavaBean与数据库操作

    jsp结合javabean的实践

    Scope:是类的有效范围 2、保存页面信息(赋值) Id:是类的代号 property:是属性名 value:是属性的值 3、取值 Id:是类的代号 property:是属性名 示例 readFile.jsp: ;charset=gb2312"%&gt; *"%&gt; ...

    JSP和JavaBean

    认识JavaBean 在JSP中使用JavaBean JavaBean的范围 DAO和VO

    JavaBean的保存范围

    NULL 博文链接:https://chaoyi.iteye.com/blog/2070977

    四大属性范围内的javabean(完整版)实用资料.doc

    四大属性范围内的javabean(完整版)实用资料.doc

    JSP教程之使用JavaBean完成业务逻辑的方法

    本文实例讲述了JSP教程之使用JavaBean完成业务逻辑的方法。分享给大家供大家参考。具体如下: 一、目标: ① 掌握什么是JavaBean; ② 掌握如何编写JavaBean; ③ 掌握如何在JSP中访问JavaBean; ④ 理解JSP中对象的...

    JavaBean四个作用域范围的详解

    主要介绍了JavaBean四个作用域范围的详解的相关资料,希望通过本文能帮助到大家,需要的朋友可以参考下

    jsp+servlet+javabean简单搜索实例

    这是一个简单的搜索实例,输入学生的生日范围,在列表中显示该范围内的所有学生的信息,没有分页处理,其中jdbc部分没有做异常处理,只是想让初学者有个参考,我是从.net转java的,才学了几天,大家有什么意见或建议...

    JSP与JavaBean

    使用Javabean4.Bean的加载原理5.Bean的有效范围(生命周期)6.获取和修改bean的属性 JavaBean是一个可重复使用的软件组件 是遵循一定标准、用Java语言编写的一个类 一般实现网页中的业务逻辑或数据库操作 特点: ...

    JSP(JSP介绍、工作原理、生命周期、语法、指令、行为、avaBean、JavaBean、内置对象的介绍、4种属性范围、应用)

    JSP(JSP介绍、工作原理、生命周期、语法、指令、行为、avaBean、JavaBean、内置对象的介绍、4种属性范围、应用)

    Javaweb:JavaBean实验

    1、 创建学生成绩的表单页面,并创建对应的JavaBean,在JSP页面中使用标签来设置和读取属性 2、 在多个页面间测试JavaBean的作用范围,通过实验对scope为page,request,session,application加强理解

    JSP实例编程100例

    65、范围为 Page 的 JavaBean范例程序 66、范围为 Request的 JavaBean 67、范围为 Session 的 JavaBean 68、范围为 Application 的 JavaBean 69、删除 JavaBean 70、url重组 71、Switch语句 72、环境变量 73、...

    .需要完成的任务 :开发“图书管理系统”:

    1.需要完成的任务 :开发“图书管理系统”: 技术实现:基于(JSP+Servlet+JavaBean+DAO+JDBC)的Web架构设计该系统。...(6)使用JavaBean完成业务逻辑; (7)学会用Dao封装数据库操作; (8)掌握数据库的连接技术

    JAP编程学习100例

    65、范围为 Page 的 JavaBean范例程序 66、范围为 Request的 JavaBean 67、范围为 Session 的 JavaBean 68、范围为 Application 的 JavaBean 69、删除 JavaBean 70、url重组 71、Switch语句 72、环境变量 73、...

    解析MySQL中存储时间日期类型的选择问题

    3. 条件范围搜索可以使用使用between 4. 不能使用mysql提供的时间函数 结论:适合需要进行大量时间范围查询的数据表 datetime(javaBean中用Date类型) 1. 占用8个字节 2. 允许为空值,可以自定义值,系统不会...

    JSP程序设计实用教程-源码

     第四节 javabean的范围  第五节 javabean的应用  实训   习题  第六章cc文件操作  第七章ccservlet技术 第二部分cc项目实训 cc新闻发布系统的开发实例 cc第八章cc项目需求分析 cc第九章cc设计 cc第十章cc...

    网上购物系统(JavaBean+Servlet+jsp)

    网上购物系统的英文是Online Shopping System,这个单词最先提出的是英国的Lap公司,一家在世界范围内做网店系统都非常有名的公司。该公司在中国大陆设有分公司,Lap公司提出这个词起源于1998年,英国在线购物刚刚...

    jsp简易留言板程序,未使用bean的

    简单jsp留言板,没使用javabean,实现了增删功能,代码简单

Global site tag (gtag.js) - Google Analytics