JavaBean

597 阅读1分钟

何为JavaBean

JavaBean 是特殊的 Java 类,使用 Java 语言书写,并且遵守 JavaBean API 规范。 接下来给出的是 JavaBean 与其它 Java 类相比而言独一无二的特征:

  • 提供一个默认的无参构造函数。
  • 需要被序列化并且实现了 Serializable 接口。
  • 可能有一系列可读写属性。
  • 可能有一系列的 getter 或 setter 方法。 大致形状如下:
public class People {
    private int id;
    private String name;
    private int age;
    private String address;

    public People() {
    }

    public People(int id, String name, int age, String address) {
        this.id = id;
        this.name = name;
        this.age = age;
        this.address = address;
    }

    @Override
    public String toString() {
        return "People{" +
                "id=" + id +
                ", name='" + name + '\'' +
                ", age=" + age +
                ", address='" + address + '\'' +
                '}';
    }

    public int getId() {
        return id;
    }

    public void setId(int id) {
        this.id = id;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public int getAge() {
        return age;
    }

    public void setAge(int age) {
        this.age = age;
    }

    public String getAddress() {
        return address;
    }

    public void setAddress(String address) {
        this.address = address;
    }
}

在JSP中如何使用

形状如下:

<jsp:useBean id="people" class="bean.People" scope="page"></jsp:useBean>

<jsp:setProperty name="people" property="id" value="1"></jsp:setProperty>
<jsp:setProperty name="people" property="age" value="13"></jsp:setProperty>
<jsp:setProperty name="people" property="name" value="kittyguy"></jsp:setProperty>
<jsp:setProperty name="people" property="address" value="北京"></jsp:setProperty>
<jsp:getProperty name="people" property="id"/><br>
<jsp:getProperty name="people" property="age"/><br>
<jsp:getProperty name="people" property="name"/><br>
<jsp:getProperty name="people" property="address"/><br>

期间遇到的错误

===================================================

  • 无法为JSP编译类
  • People cannot be resolved to a type(无法解析该类)

解决该问题的依据

===================================================

===================================================

===================================================

总结

  • 尽量不要在默认包下创建类,会出问题