JavaBean简介
JavaBean是一个遵循特定写法的Java类,属于一种java中很常见的设计规范
-
一般具有如下特点:
- 这个
Java类必须具有一个无参(或默认)的构造函数
属性一般都以私有化形式展现。
私有化的属性可以通过public类型的get方法暴露给其它程序
方法的命名遵守一定的命名规范。
javaBean范例:
package com.java.bean;
public class Roll {
/* --- 数据定义 ---- */
private Integer roll_r = new Integer(10);
private Float roll_area = new Float(0.0);
/* ---- 方法定义 ----*/
/* ----- 无参构造函数 ------*/
public Roll() {
this.roll_r = 0 ;
this.roll_area = (float) 0.0 ;
}
/*------- setter , getter ----- */
public void setR(Integer integer) {
this.roll_r = integer;
this.roll_area = (float) (integer*integer*3.14);
}
public Integer getR() {
return this.roll_r;
}
public Float getArea() {
return this.roll_area ;
}
}
JavaBean在J2EE开发中,通常用于封装数据
对于遵循以上写法的JavaBean组件,可以通过反射技术实例化JavaBean对象
并且通过反射那些遵守命名规范的方法,从而获知JavaBean的属性,进而调用其属性保存数据。
JavaBean的属性规范
JavaBean的属性可以是任意类型,并且一个JavaBean可以有多个属性。
每个属性通常都需要具有相应的setter、 getter方法
setter方法称为属性修改器,getter方法称为属性访问器。
-
属性修改器必须以小写的
name属性的修改器名称为setName,password属性的修改器名称为setPassword。
属性访问器通常以小写的name属性的访问器名称为getName,password属性的访问器名称为getPassword。
set前缀开始,后跟属性名,且属性名的第一个字母要改为大写
例:
get前缀开始,后跟属性名,且属性名的第一个字母也要改为大写
例:
注:
一个JavaBean的某个属性也可以只有set方法或get方法,这样的属性通常也称之为只写、只读属性。
在JSP中使用JavaBean
JSP技术提供了三个关于JavaBean组件的动作元素
JavaBean本质上是一个是一个通用格式,所有Bean都以固定格式编写
JSP 标签:
- 用于在
JSP页面中 查找 或 实例化一个JavaBean组件。
<jsp:setProperty>标签 - 用于在
JSP页面中设置一个JavaBean组件的属性。
<jsp:getProperty>标签 - 用于在
JSP页面中获取一个JavaBean组件的属性。
<jsp:useBean>标签
<jsp:useBean>标签
<jsp:useBean>标签用于在指定的域范围内查找指定名称的JavaBean对象
如果存在则直接返回该JavaBean对象的引用
如果不存在则实例化一个新的JavaBean对象并将它以指定的名称存储到指定的域范围中。
常用语法:
<jsp:useBean id="beanName" class="package.class" scope="page|request|session|application"/>
| 属性 | 作用 |
|---|---|
id | 用于指定JavaBean实例对象的 引用名称 和 其存储在域范围中的名称。 |
class | 用于指定JavaBean的完整类名(即必须带有包名)。 |
scope | 用于指定JavaBean实例对象所存储的域范围,其取值只能是page、request、session和application 等四个值中的一个,其默认值是page |
<jsp:useBean>标签使用范例:
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%--
在 jsp 中使用 jsp:useBean 标签来实例化一个Java类的对象
<jsp:useBean id="person" class="gacl.javabean.study.Person" scope="page"/>
┝<jsp:useBean>:表示在JSP中要使用JavaBean。
┝id:表示生成的实例化对象,凡是在标签中看见了id,则肯定表示一个实例对象。
┝class:此对象对应的包.类名称
┝scope:此javaBean的保存范围,四种范围:page、request、session、application
--%>
<jsp:useBean id="roll" class="com.java.bean.Roll" scope="page"/>
<%
// roll对象已经在package中的"com.java.bean.Roll"实例化了,在这里直接调用,
// 若无实例化,不需要写
// scope 指定在该页面起作用
roll.setR(10);
// 设置roll对象的 半径
%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
</head>
<body>
<h2>半径为:<%= roll.getR() %></h2>
<h2>面积为:<%= roll.getArea() %></h2>
</body>
</html>

本文介绍了JavaBean的设计规范及其在J2EE开发中的应用。详细解释了JavaBean的属性及方法命名规则,并展示了如何在JSP中使用<jsp:useBean>、<jsp:setProperty>和<jsp:getProperty>标签实例化和操作JavaBean。
129

被折叠的 条评论
为什么被折叠?



