jsp02——JavaBean的定义与使用

231 阅读2分钟

1、什么是javaBean

JavaBean 是Java的可重用组件,是一种特殊的Java类,采用Java语言编写,并且遵守JavaBean API的规范,为写成JavaBean,类必须是具体的和公共的,并且具有无参数的构造器JavaBean 通过提供符合一致性设计模式的公共方法将内部域暴露成员属性,set和get方法获取

JavaBean是一个遵循特定写法的Java类,它通常具有如下特点:

  • 这个Java类必须具有一个无参的构造函数
  • 属性必须私有化。
  • 私有化的属性必须通过public类型的方法暴露给其它程序,并且方法的命名也必须遵守一定的命名规范。
package gacl.javabean.study;
public class User {
    //------------------Person类封装的私有属性---------------------------------------
    private String info;
    private String name;
    private char sex;
    private int age;
    
    //------------------Person类的无参数构造方法---------------------------------------
    // 无参数构造方法
    public User() {
         
    }
   
    //------------------Person类对外提供的用于访问私有属性的public方法------------------
    public String getInfo() {
	return info;
    }
    public void setInfo(String info) {
            this.info = info;
    }
    public String getName() {
            return name;
    }
    public void setName(String name) {
            this.name = name;
    }
    public char getSex() {
            return sex;
    }
    public void setSex(char sex) {
            this.sex = sex;
    }
    public int getAge() {
            return age;
    }
    public void setAge(int age) {
            this.age = age;
    }
}

2、JavaBean的属性

  JavaBean的属性可以是任意类型,并且一个JavaBean可以有多个属性。每个属性通常都需要具有相应的setter、 getter方法,setter方法称为属性修改器,getter方法称为属性访问器。

一个JavaBean的某个属性也可以只有set方法或get方法,这样的属性通常也称之为只写、只读属性。

3、在JSP中使用JavaBean

  JSP技术提供了三个关于JavaBean组件的动作元素,即JSP标签,它们分别为:

  • <jsp:useBean >标签:用于在JSP页面中查找或实例化一个JavaBean组件。
  • <jsp:setProperty >标签:用于在JSP页面中设置一个JavaBean组件的属性。
  • <jsp:getProperty >标签:用于在JSP页面中获取一个JavaBean组件的属性。

3.1 useBean的使用

<jsp:useBean id="实例化的变量名" class="设置从哪个类实例化javabean对象 scope="设置javaBean的作用范围(默认是page,可设置page|request|session|application">

    <jsp:useBean id="myUser" class="com.bean.User"></jsp:useBean>
    <% myUser.setInfo("哈哈哈哈哈"); %>

3.2 设置setProperty

<jsp:setProperty property="实例化的属性名" name="实例名" value="设置属性值"/>

<jsp:useBean id="myUser" class="com.bean.User"></jsp:useBean>
<jsp:setProperty property="info" name="myUser" value="哈哈哈啊哈哈"/>
<%="<br/>我是使用打印出来的:" + myUser.getInfo() %>

3.3 获取getProperty

<jsp:getProperty property="实例化对象名" name="实例化名"></jsp:getProperty>

<jsp:getProperty property="info" name="myUser"></jsp:getProperty>