JavaBean基础使用方法与操作步骤

JavaWeb jsp Bean

项目结构

JavaBean的概念

JavaBean是可复用的、平台独立的软件组件

  • JavaBean既可以是简单的GUI要素,如按钮和滚动条
  • JavaBean也可以是复杂的可视化软件组件,如数据库视图
  • 有些JavaBean是没有GUI表现形式的,常用来封装事务逻辑、数据库操作等等

我们可以把遵循某种规范的Java类称为JavaBean:

  • 这个类是可序列化的
  • 这个类必须带有一个无参的构造方法
  • 这个类的属性必须通过get 、set和其他标准命名规范来命名的方法进行操作
  • 这个类包含事件处理方法

JavaBean与Jsp

广义讲,符合规范的Java类都是JavaBean

JavaBean的作用

  • 封装数据
  • 处理业务逻辑

JSP与JavaBean如何结合使用

  • Scriptlet
  • JSP标准动作

jsp标准动作

使用步骤与方法

具体代码怎么写查看后文的代码,代码包含了详细的注释

  1. 导入JavaBean类
  2. 声明JavaBean对象,创建或者获得一个对象

3.设置JavaBean中属性的值

4.获取JavaBean中属性的值

scope属性的取值

scope属性取值为page

JavaBean的缺省作用域,也叫页面级作用域

客户每次请求JSP页面时,都会创建一个JavaBean对象

JavaBean对象在以下两种情况下结束生命期

  • 客户请求访问的当前JSP网页通过jsp:forward标签将请求转发到另一个页面
  • 客户请求访问的当前JSP页面执行完毕并向客户端发回响应

scope属性取值为request

客户每次请求访问JSP页面时,都会创建一个JavaBean对象

JavaBean对象的有效范围为:

  • 客户请求访问的当前JSP页面
  • 当前JSP页在共享同一个客户请求的页面

scope属性取值为session

它存在于整个session的生存周期内,处于同一个session中的JSP页面共享这个JavaBean对象

scope属性值取为application

它存在于整个Web应用的生存周期内,Web应用中所有JSP页面都能共享同一个JavaBean对象

bean.book代码

点击查看代码
package bean;

public class book {
//将属性声明为私有属性
private String bookName="《萌狼说》";
private int bookNumber=100; public String getBookName() {
return bookName;
} public void setBookName(String bookName) {
this.bookName = bookName;
} public int getBookNumber() {
return bookNumber;
} public void setBookNumber(int bookNumber) {
this.bookNumber = bookNumber;
}
}

index.jsp 代码

点击查看代码
<%--
Created by IntelliJ IDEA.
User: xrilang
Date: 2021/10/20
Time: 14:25
--%>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>$Title$</title>
</head>
<body>
<%--导入JavaBean的类:bean--%>
<%@page import="bean.book" %>
<%@ page import="java.awt.print.Book" %>
<%-- 声明JavaBean对象,创建或者获得一个对象--%>
<%-- 方法1:声明一个对象myBean1--%>
<jsp:useBean id="myBean1" class="bean.book" scope="session"/>
<%-- 方法2:创建一个对象myBean2--%>
<%
Book myBean2 = new Book();
session.setAttribute("myBean2",myBean2);
%>
<%
/**关于JavaBean的scope设置
*【范围】 page
*【说明】Bean 对象只能在当前页面使用,当加载新页面时就会被销毁
*【范围】request
*【说明】Bean对象在一个请求过程中存在
*【范围】session
*【说明】Bean对象在一个会话中存在,直至会话其终止或被删除为止
*【范围】application
*【说明】Bean对象在整个应用程序中均可使用
* */
%>
<%-- setProperty和getProperty动作--%>
<%--设置JavaBean中属性的值--%>
<!--property指定JavaBean属性名称,value设置JavaBean的该属性值-->
<!--name属性指定对JavaBean类的引用,与useBean中的id一致-->
<!--property指定JavaBean的属性名称-->
<jsp:setProperty name="myBean1" property="bookName" value="《西游记》"/>
<jsp:setProperty name="myBean1" property="bookNumber" value="1000"/>
<%-- 获取JavaBean中的值--%>
<jsp:getProperty name="myBean1" property="bookName"/>
<jsp:getProperty name="myBean1" property="bookNumber"/>
<%
/**< jsp:useBean>的scope属性的取值
* scope属性取值为page,JavaBean的缺省作用域,也叫页面级作用域
* 客户每次请求JSP页面时,都会创建一个JavaBean对象
* JavaBean对象在以下两种情况下结束生命期
* 客户请求访问的当前JSP网页通过<jsp:forward>标签将请求转发到另一个页面
* 客户请求访问的当前JSP页面执行完毕并向客户端发回响应
* scope属性取值为request时,客户每次请求访问JSP页面时,都会创建一个JavaBean对象
* JavaBean对象的有效范围为:
* 客户请求访问的当前JSP页面。
* 和当前JSP页在共享同一个客户请求的页面
* scope属性取值为session,它存在于整个session的生存周期内,处于同一个session中的JSP页面共享这个JavaBean对象
* scope属性值取为application,它存在于整个Web应用的生存周期内,Web应用中所有JSP页面都能共享同一个JavaBean对象
*/ %>
</body>
</html>

运行结果

【JavaWeb】【JSP】【Bean】JavaBean基础使用方法与操作步骤的更多相关文章

  1. JavaWeb -- Jsp 和 JavaBean

    JSP技术提供了三个关于JavaBean组件的动作元素,即JSP标签,它们分别为: <jsp:useBean>标签:用于在JSP页面中查找或实例化一个JavaBean组件. <jsp ...

  2. hadoop主节点(NameNode)备份策略以、恢复方法、操作步骤

    一.dits和fsimage      首先要提到两个文件edits和fsimage,下面来说说他们是做什么的. 集群中的名称节点(NameNode)会把文件系统的变化以追加保存到日志文件edits中 ...

  3. JavaWeb:JavaBean基础

    JavaBean基础 JavaBean简介: 1.JavaBean是一种可以重复使用的类,可以没有用户界面,主要负责业务数据或者处理事物(数据运算.操作数据库) 2.与JSP配合,可以简化JSP代码. ...

  4. JavaWeb:JSP技术基础

    JavaWeb:JSP技术 快速开始 介绍 JSP全称Java Server Pages,是一种动态网页开发技术.它使用JSP标签在HTML网页中插入Java代码.标签通常以<%开头以%> ...

  5. javaWeb 使用 jsp 和 javaBean 实现计算器功能

    <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"% ...

  6. JavaBean 基础概念、使用实例及代码分析

    JavaBean 基础概念.使用实例及代码分析 JavaBean的概念 JavaBean是一种可重复使用的.且跨平台的软件组件. JavaBean可分为两种:一种是有用户界面的(有UI的):另一种是没 ...

  7. JavaBean基础转载

    JavaWeb:JavaBean基础 JavaBean基础 JavaBean简介: 1.JavaBean是一种可以重复使用的类,可以没有用户界面,主要负责业务数据或者处理事物(数据运算.操作数据库) ...

  8. JavaWeb——JSP表达式语言(EL)

    1.JSP表达式语言(EL)用于在jsp从访问存储在JavaBean中的数据,例如 User ID: ${user.userId}<br /> 这里的${user.userId}就是JSP ...

  9. jsp 以及javabean内省技术

    l JSP l JavaBean及内省 l EL表达式 1.1 上次课内容回顾 会话技术: Cookie:客户端技术.将数据保存在客户端浏览器上.Cookie是有大小和个数的限制. Session:服 ...

随机推荐

  1. webpack 项目接入Vite的通用方案介绍(上)

    愿景 希望通过本文,能给读者提供一个存/增量项目接入Vite的点子,起抛砖引玉的作用,减少这方面能力的建设成本 在阐述过程中同时也会逐渐完善webpack-vite-serve这个工具 读者可直接fo ...

  2. 大爽Python入门教程 3-2 条件判断: if...elif..else

    大爽Python入门公开课教案 点击查看教程总目录 简单回顾if 回顾下第一章的代码 >>> x = 5 >>> if x > 0: ... print(&q ...

  3. Django 小实例S1 简易学生选课管理系统 1 项目流程梳理与数据库设计

    Django 小实例S1 简易学生选课管理系统 第1章--项目流程梳理与数据库设计 点击查看教程总目录 作者自我介绍:b站小UP主,时常直播编程+红警三,python1对1辅导老师. 1 项目流程梳理 ...

  4. logstash插件配置-codec插件说明json和multiline

    编码插件(Codec) Codec 是 logstash 从 1.3.0 版开始新引入的概念(Codec 来自 Coder/decoder 两个单词的首字母缩写). 在此之前,logstash 只支持 ...

  5. [hdu7081]Pty loves book

    建立ac自动机,令$S_{x}$为以根到$x$的路径所构成的字符串以及$L_{x}=|S_{x}|,W_{x}=\sum_{1\le i\le m,t_{i}为S_{x}的后缀}w_{i}$,那么不难 ...

  6. [luogu4259]寻找车位

    考虑一个分治的做法:按行分治,将所有区间分为两类--经过分割线的.在左/右区间内部,后者显然可以递归下取,考虑前者 先求出出该行上每一列向上和向下的最大长度,记作$up_{i}$和$down_{i}$ ...

  7. 一个非常好用的IDEA插件,用于填充set

    对于对接三方接口总有一堆字段参数,如在入参时需要赋值,将请求参数封装成一个pojo实体类,然后需要为其set,调用许多setter方法,如果一行行去编写很麻烦,...能不能节省一下我仅存的生产力呀.. ...

  8. pycharm的selenium设置

    如果运行文件,提示 no model named selenium 那就需要添加selenium的安装地址 如上图 在python>lib>site-packages 在pycharm的f ...

  9. Codeforces 587F - Duff is Mad(根号分治+AC 自动机+树状数组)

    题面传送门 第一眼看成了 CF547E-- 话说 CF587F 和 CF547E 出题人一样欸--还有另一道 AC 自动机的题 CF696D 也是这位名叫 PrinceOfPersia 的出题人出的- ...

  10. 【GWAS】如何计算显著关联位点的表型解释率PVE(phenotypic variation explained)?

    我已经通过Gemma得到了关联分析的结果,如下. prefix.log.txt 中包含了一个总的PVE,这不是我们想要的. 那么,如何计算这些位点的表型解释率? 据了解,有些关联分析软件是可以同时得到 ...