java bean 中scope的取值page、request、session、application

javabean 中的scope取值

首先,什么是java bean?

JavaBean是JAVA语言写成的可重用软件组件,是一个java类,通过封装属性和方法成为具有某种功能或者处理某种业务的对象

提供可以调用的方法、提供的可读写的属性,可向外部发送的或从外部接收的事件

java bean 的编写及使用

1、定义bean,简单例子

public class PC {
private String pinpai,xinghao,riqi;
public String getPinpai() {
return pinpai;

}

       public void setPinpai(String pinpai) {           //定义setters和getters

this.pinpai = pinpai;
}
public String getXinghao() {
return xinghao;
}
public void setXinghao(String xinghao) {
this.xinghao = xinghao;
}
public String getRiqi() {
return riqi;
}
public void setRiqi(String riqi) {
this.riqi = riqi;
}

}

2、调用bean

<jsp:useBean> 标签可以在JSP中声明一个JavaBean,然后使用。声明后,JavaBean对象就成了脚本变量,可以通过脚本元素或其他自定义标签来访问。在 <jsp:useBean> 标签主体中使用 <jsp:getProperty/> 动作标记来调用 getter 方法,使用 <jsp:setProperty/> 动作标记来调用 setter 方法

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<%@ page import="com.jspDemo.PC" %>
<jsp:useBean id="computer" class="com.jspDemo.PC" scope="request"></jsp:useBean>
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>inputAndShow</title>
</head>
<body>
  <form action="" method="post">
    <span>计算机品牌:</span><input type="text" name=pinpai><br>
    <span>计算机型号:</span><input type="text" name=xinghao><br>
    <span>生产日期:</span><input type="text" name=riqi><br>
    <input type="submit" value="提交">
  </form>
  <jsp:setProperty property="*" name="computer"/>
  <table>
    <tr>
      <th>计算机品牌</th>
      <th>计算机型号</th>
      <th>生产日期</th>
    </tr>
    <tr>
      <td><jsp:getProperty property="pinpai" name="computer"/></td>
      <td><jsp:getProperty property="xinghao" name="computer"/></td>
      <td><jsp:getProperty property="riqi" name="computer"/></td>
    </tr>
  </table>
</body>
</html>

java bean 的useBean 标记中scope的取值

<jsp:useBean id="idName" class="javaBean的路径" scope="scope的取值(page/request/session/application)"></jsp:useBean>

  不同的取值意味着bean的生命周期是不同的

      (1)page(有效期限是当前页面,页面关闭即失效)表示将JavaBean实例对象存储在PageContext对象中,作用范围是当前JSP页面有效。
  (2)request ( 有效期限是request期间,当request被响应后便结束,对之后的请求没影响)表示将JavaBean实例对象存储在Servlet Request对象中,存储在 request对象中的JavaBean对象可以被属于同一个请求的所有Servlet和JSP页面访问。
  (3)session (有效期限是用户会话期间,也就是session的生命周期结束后才结束,不同用户的session间不会相互影响)表示将JavaBean实例对象存储在HttpSession对象中,存储在HttpSession对象中的JavaBean对象可以被属于同一个会话的所有Servlet和JSP页面访问,此设置要求当前JSP页面支持Session,即没有将page指令的session属性设置为false。也就是对一个特定用户有效,一个http会话。
  (4)application(有效期限是最长的,服务器关闭有限期限才结束,可以在不同用户间共享)表示将JavaBean实例对象存储在ServletContext对象中,存储在ServletContext对象中的JavaBean对象可以被同一个Web应用程序中的所有Servlet和JSP页面访问。也就是所有用户都可以使用。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值