一、什么是JavaBean组件?
JavaBean组件是Java类,这些类遵循一个接口格式,以便于使方法名、底层行为及继承或实现的行为能够把类看做标准的JavaBeans组件进行构造。
二、为什么在JSP中使用JavaBean?
JavaBean第一个好处就是便于软件开发,javaBean可以在JSP中使用标签引用,便于网站阅读和维护。
三、javaBean的属性种类与运用?
JavaBean有四种,分别是
Simple(简单的)
Indexed(索引的)
Bound(绑定的)
Constrained(约束的)
1、简单的属性运用
一个简单属性表示一个伴随有get/set方法的变量,它依赖于标准命名约定来定义getter方法和setter方法。(为什么要用getter和setter方法?我们通常定义一个类的时候都会有属性,但是我们在实际工程中其他类经常会去访问或者修改该类的属性,如果我们每个程序员都用一个不同的方法名,而不遵循命名规则,那么很难进行高质量的软件开发。)
它的使用语法如下:
public void set<PropertyName>(<PropertyType> value);
public <PropertyType> get<PropertyName>();
public boolean is<PropertyName>();
Boolean类型,除了可以使用getter方法外,还可以使用isXXX方法来获得这个属性。
下面就是一个具有简单的属性的JavaBean
package com.lizhenhua.ch5.Test;
public class SimpleBean {
private String type;//type为属性的名字,类型是String
private boolean debug = false;//boolean 的 debug属性
/**
* getter方法,返回这个属性的值
* @return 返回type的值
*/
public String getType() {
return type;
}
/**
* setter方法,设置type的值
* @param type 需要设置的值
*/
public void setType(String type) {
this.type = type;
}
/**
* 返回debug属性的值
* @return
*/
public boolean isDebug() {//对于Boolean类型的属性,可以使用isXXX方法获得属性
return debug;
}
/**
* 设置debug属性的值
* @param debug
*/
public void setDebug(boolean debug) {
this.debug = debug;
}
}
2.使用索引的属性的JavaBean
一个Indexed索引属性表示一个数组值
使用语法:
public void set<PropettyName>(int index,<PropertyType> value);
public void set<PropertyName>(<PropertyType[]> value);
public <PropertyType[]> get<PropertyName>();
public <PropertyType> get<PropertyName>(int index);
下面是使用索引的属性的例子:
package com.lizhenhua.ch5.Test;
public class IndexBean {
private String[] type = new String[]{"shenzhen","shanghai","changsha"};//type为属性的名字,类型是String
/**
* getter方法,返回这个属性的值
* @return
*/
public String[] getType() {
return type;
}
/**
* setter方法,设置这个属性的值
* @param type
*/
public void setType(String[] type) {
this.type = type;
}
/**
* 得到index指定元素的值
* @param index
* @return
*/
public String getType(int index){
return type[index];
}
/**
* 设置指定元素的值
* @param index
* @param value
*/
public void setType(int index, String value){
type[index] = value;
}
}
注意:在JSP页面中引用有索引的javaBean时,用<jsp:getProperty>得到的是相当于public String[] getType() 调用该方法的值
用<jsp:setProperty>是设置的是相当于public void setType(String[] type) 调用这个方法。