JavaBean 与 EL 表达式学习笔记

一、JavaBean
JavaBean 是按照特定规则编写的 Java 类,主要用于封装数据。

  1. 编写规范
    必须有一个公共无参构造方法
    java
    // 无参构造方法(必须)
    public Student() {
    }

// 可以有带参构造方法(可选)
public Student(String no, String name, int age, String sdept) {
this.no = no;
this.name = name;
this.age = age;
this.sdept = sdept;
}

public Student(String no, String name, int age) {
this.no = no;
this.name = name;
this.age = age;
}

public Student(String no, String name) {
this.no = no;
this.name = name;
}
构造方法特点:方法名与类名相同,无返回值,访问权限为 public

属性必须提供 getter 和 setter 方法
若成员变量名为 xxx,则:

getXxx():获取属性值,有返回值,无参数

setXxx():修改属性值,无返回值,有参数

命名规则:首字母小写的驼峰式命名

java
// getter 方法:获取属性值
public String getName() {
return name;
}

// setter 方法:设置属性值
public void setName(String name) {
this.name = name;
}
2. 完整 JavaBean 示例
java
public class Student {
// 私有属性
private String no;
private String name;
private int age;
private String sdept;

// 无参构造方法(必须)
public Student() {
}

// 带参构造方法(可选)
public Student(String no, String name, int age, String sdept) {
this.no = no;
this.name = name;
this.age = age;
this.sdept = sdept;
}

// getter 和 setter 方法
public String getNo() {
return no;
}

public void setNo(String no) {
this.no = no;
}

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 getSdept() {
return sdept;
}

public void setSdept(String sdept) {
this.sdept = sdept;
}
}
二、JavaBean 在 JSP 中的使用

  1. 加载 JavaBean
    jsp
    <jsp:useBean id="user" class="com.example.javabean2.User" scope="page" />
    属性 说明
    id JavaBean 实例的引用名称
    class JavaBean 的完整类路径
    scope 作用域(page / request / session / application)

  2. 设置属性值
    jsp
    <jsp:setProperty name="user" property="userName" value="admin" />
    <jsp:setProperty name="user" property="userPwd" value="123456" />
    属性 说明
    name 对应 jsp:useBean 中的 id
    property 要设置的属性名
    value 要设置的属性值

  3. 获取属性值
    jsp
    <jsp:getProperty name="user" property="userName" />
    <jsp:getProperty name="user" property="userPwd" />
    三、EL 表达式
    EL 表达式(Expression Language)用于从作用域中获取数据并输出到浏览器,可简化 JSP 页面中的 Java 代码。

  4. 启用 EL 表达式
    在 JSP 页面开头添加(默认一般为开启):

jsp
<%@ page isELIgnored="false" %>
2. 基本语法
text
${EL表达式}
3. 使用示例
jsp
<%-- 存储数据到请求域 --%>
<%
request.setAttribute("userName", "admin");
request.setAttribute("user", user); // user 为 JavaBean 对象
%>

<%-- 使用 EL 表达式获取数据 --%>

用户名:${userName}

用户对象中的用户名:${user.userName}

四、EL 表达式与 JavaBean 配合使用 jsp <%@ page isELIgnored="false" %>

<%-- 设置属性 --%>
<jsp:setProperty name="student" property="no" value="2024001" />
<jsp:setProperty name="student" property="name" value="张三" />
<jsp:setProperty name="student" property="age" value="20" />

<%-- 使用 EL 表达式获取并显示 --%>

学号: ${student.no}
姓名: ${student.name}
年龄: ${student.age}
快速记忆卡片 知识点 核心要点 JavaBean 规范 公共无参构造 + 私有属性 + getter/setter 构造方法 方法名=类名,无返回值,public getXxx 有返回值,无参数 setXxx 无返回值,有参数 jsp:useBean 加载 JavaBean,指定 id、class、scope jsp:setProperty 设置属性值 jsp:getProperty 获取属性值 EL 表达式 ${xxx},从作用域获取数据输出 isELIgnored 设置是否忽略 EL 表达式
posted @ 2026-05-07 10:10  崩崩  阅读(8)  评论(0)    收藏  举报