OOP
OOP (Object-Oriented Programming) – Lập trình hướng đối tượng.
JavaBean
📘 JavaBean là gì?
JavaBean là một lớp Java tuân theo các quy tắc sau:
- Có constructor mặc định không tham số.
- Có phương thức getter và setter cho từng thuộc tính.
- Cài đặt giao diện
Serializableđể hỗ trợ truyền/ghi dữ liệu.
👉 JavaBeans thường được sử dụng trong JSP để lưu trữ và truyền dữ liệu giữa các trang.
🔒 Serializable là gì?
Serializablelà một marker interface (không chứa phương thức) dùng để đánh dấu rằng lớp đó có thể được ghi xuống file hoặc truyền qua mạng.
🧱 Class (JavaBean chuẩn)
public class Person implements Serializable {
private String name; // Thuộc tính (attribute)
private int age;
public Person() {} // Constructor mặc định
// Getter
public String getName() {
return this.name;
}
// Setter
public void setName(String name) {
this.name = name;
}
public int getAge() {
return this.age;
}
public void setAge(int age) {
this.age = age;
}
}
⚙️ Khởi tạo và thao tác
// Khởi tạo
Person person = new Person();
// Gán giá trị
person.setName("John Doe");
person.setAge(30);
// Truy xuất giá trị
String name = person.getName();
int age = person.getAge();
💡 JavaBean trong JSP
Tạo đối tượng (useBean)
<jsp:useBean id="person" class="net.ezse.Person" />
Gán giá trị (setProperty)
<jsp:setProperty name="person" property="name" value="John Doe" />
<jsp:setProperty name="person" property="age" value="35" />
Hiển thị giá trị (getProperty)
<p>Name: <jsp:getProperty name="person" property="name" /></p>
<p>Age: <jsp:getProperty name="person" property="age" /></p>
Hoặc dùng EL (Expression Language)
<p>${person.name}</p>
<p>${person.age}</p>
🕒 Ví dụ khác: Bean Date
<jsp:useBean id="date" class="java.util.Date" />
<p>Today is: ${date}</p>
<p>Month: ${date.month + 1}</p> <!-- Lưu ý: tháng bắt đầu từ 0 -->
<p>Day: ${date.date}</p>
