Java EE JavaBean组件
一、简介
JavaBean组件是一些可移植、可重用并可组装到应用程序中的Java类,类必须是具体的和公共的。
符合下列设计规则的任何Java类均是以JavaBean:
1.对数据类型“protype”的每个可读属性,Bean下必须有下面签名的一个方法:public proptype getProperty(){}
2.对数据类型“protype”的每个可写属性,Bean下必须有下面签名的一个方法:public void setProperty(proptype x){}
3.定义一个不带任何参数的构造函数。
二、JavaBean与JSP的结合
JSP在动态Web应用开发中得到了越来越多的应用,JSP提供的9个内置对象极大的方便了JSP页面的控制与开发,但由于应用程序功能要求越来越强,JSP页面变得越来越臃肿且难以控制。也正因如此JSP与JavaBean相结合逐渐成为最常见的Web应用程序开发方式。
(一)、JSP中JavaBean相关标记
JSP页面中与JavaBean有关的标记有<jsp:useBean>、<jsp:setProperty>和<jsp:getProperty>三个。
(1)、<jsp:useBean>
该标记声明一JavaBean实例,该实例具有一定生存范围及一个唯一id,JSP页面通过这个唯一的id来识别JavaBean并通过id.method类似语句操作JavaBean。
eg:声明类Student,id为s1。
<jsp:useBean id="s1" class="Student" scope="application"></jsp:useBean>
scope属性值指明JavaBean的作用域,其默认值为page。
(2)、<jsp:setProperty>
该标记用于设定一个已经被创建的JavaBean组件的属性值。
eg:设定Student组件s1的classno属性
<jsp:setProperty name="s1" property="classno" value="56789"></jsp:setProperty>
name属性值对应JavaBean组件的id值;property属性指定想设定属性值的属性名;value属性指定属性值,该值可为字符串也可为表达式。
(3)、<jsp:getProperty>
该标记用于返回一个已经被创建的JavaBean组件的属性值。
eg:获取Student组件s1的name属性的属性值
<jsp:getProperty name="s1" property="name"></jsp:getProperty>
等价于:
<%=s1.name %>
(二)、JavaBean的Scope属性说明
每个JavaBean均有一个生存范围,而每个JavaBean只能在它定义的范围中才可使用,在其定义的范围外将无法访问。
<jap:useBean>利用Scope属性来声明JavaBean的生存范围。
JSP为JavaBean设定的范围可以是:page、request、session及application。
(1)、page
page是JavaBean默认生存范围。
Scope值为page的JavaBean能在包含"<jsp:useBean>"元素的JSP文件及此文件中的所有静态包含文件中使用,直至页面执行完毕向客户端发回响应或转到另一文件为止。
(2)、request
Scope值为request的JavaBean作用于任何相同请求的JSP文件中,直至页面执行完毕向客户端发回响应或在此之前已经通过某种方式(重定向、链接等)转到另一文件为止。
还可通过使用request对象访问JavaBean。
(3)、session
Scope值为session的JavaBean,从创建JavaBean开始,就能在任何使用相同session的JSP文件中使用这个Bean,该Bean存在于整个session生存期内,任何分享此session的JSP文件都能使用同一Bean。
在session的生存周期内,对该Bean的任何改动均会影响到在此session内的任意page、request对该Bean的调用。当然前提是必须在创建此Bean的文件里事先用page指令指定了session=true。
(4)、application
Scope值为application的JavaBean,作用于整个application的生存周期内,从创建Bean开始就能在任何使用相同application的JSP文件中使用Bean。在该Bean存在于整个application生存周期内,任何分享此application的JSP文件均能使用同一Bean。在application生存周期内,对此Bean属性的任何改动均会影响到此application内另一page、另一request及另一session里对该JavaBean的调用。
Java EE JavaBean组件的更多相关文章
- Java EE.JavaBean
JavaBean是一组可移植.可重用.并可以组装到应用程序中的Java类.一个Model类(属性+构造函数).
- 什么是Java EE
Java:是一门编程语言,可以用来编写各种应用程序. Java EE:是一个标准中间件体系结构,旨在简化和规范分布式多层企业应用系统的开发和部署. Java EE是一个标准中间件体系结构 Java E ...
- Java EE—最轻量级的企业框架?
确保高效发展进程的建议 很久以前,J2EE,特别是应用程序服务器被认为过于臃肿和"重量级".对于开发人员来说,使用此技术开发应用程序会非常繁琐且令人沮丧.但是,由于 J2EE 框架 ...
- 在 Java EE 组件中使用 Camel Routes
摘要:你可以通过集成 Camel 和 WildFly 应用服务器(使用 WildFly-Camel 子系统)在 Java EE 组件中开始使用 Apache Camel Routes. [编者按]作者 ...
- Java Web开发技术教程入门-JavaBean组件与Servlet
补更:阅战阅勇第7/8/9Days笔记 昨天我们了解了JDBC技术的一些日常操作,对于数据库而言,不仅仅的只有"增,删,改,查".博主觉得最重要的是SQL语句的优化,一个" ...
- 轻量级Java EE企业应用实战(第4版):Struts 2+Spring 4+Hibernate整合开发(含CD光盘1张)
轻量级Java EE企业应用实战(第4版):Struts 2+Spring 4+Hibernate整合开发(含CD光盘1张)(国家级奖项获奖作品升级版,四版累计印刷27次发行量超10万册的轻量级Jav ...
- Java 新特性(5) - Java EE 5 新特性
Java EE 5 由 Java Community Process 通过 Java Specification Request 244 发布,这个 “总纲” JSR 指出了详细描述 Java EE ...
- Java EE发展史
前言 最近的这段时间一直在学习Java EE,刚刚完成了从0到1的蜕变,所以顺便整理一下我所了解到的Java EE,给刚入门学习的新人一些头绪,而所谓“启示录”,就是这个意思. 一.Java EE是什 ...
- java EE 新手入门了解
郑重申明:本文转载至https://blog.csdn.net/Neuf_Soleil/article/details/80962686,在此深表感谢! 为什么选择java? 想必有很多初学者会像我一 ...
随机推荐
- HttpWebRequest类,及如何使用Cookie(转载)
HttpWebRequest类与HttpRequest类的区别.HttpRequest类的对象用于服务器端,获取客户端传来的请求的信息,包括HTTP报文传送过来的所有信息.而HttpWebReques ...
- Web框架——XWAF的代码结构和运行机制(4)
XWAF是一套基于Servlet和java反射技术的Web应用程序框架,它利用Servlet运行机制在服务器上加载和运行,接管客户端请求,依靠ServletRequest对象获取用户请求信息,使用Se ...
- Extjs6 编写自己的富文本组件(以ueditor为基础)
一.下载ueditor 地址:http://ueditor.baidu.com/website/ 二.将ueitor资源引入自己的项目 在index.html中引入ueditor.config.js. ...
- 前端基础-BOM和DOM的介绍
阅读目录 BOM和DOM的简述 DOM详细操作 事件 一.BOM和DOM的简述 到目前为止,我们已经学过了JavaScript的一些简单的语法.但是这些简单的语法,并没有和浏览器有任何交互. 也就是我 ...
- WebGl 缩放(矩阵变换)
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- Easy-UI中datebox的默认显示当前日期的最简单的两种方法
在中有一个Today按钮就是实现显示当前日期,所以我们在src/jquery.datebox.js文件中可以找到currentText:'Today'.所以我们可以使用'currentText'和'T ...
- 关于python文件问题
一.python内部的首行命令 #!/usr/bin/env python #_*_coding:utf8_*_ 第一条命令用于Linux系统中的./命令,用于声明用什么Python解释器.第二条命令 ...
- 一图看懂hadoop Spark On Yarn工作原理
hadoop Spark On Yarn工作原理
- usb驱动之打印usb设备信息(二)
以下是打印鼠标左右键及其他输入的源代码,详细说明见https://www.cnblogs.com/zhu-g5may/p/9309381.html /*参考/drivers/hid/usbhid/us ...
- CTF-安恒19年一月月赛部分writeup
CTF-安恒19年一月月赛部分writeup MISC1-赢战2019 是一道图片隐写题 linux下可以正常打开图片,首先到binwalk分析一下. 里面有东西,foremost分离一下 有一张二维 ...