JSP - JavaBeans
JavaBean เป็นคลาส Java ที่สร้างขึ้นเป็นพิเศษซึ่งเขียนด้วย Java และเข้ารหัสตามข้อกำหนด JavaBeans API
ต่อไปนี้เป็นลักษณะเฉพาะที่ทำให้ JavaBean แตกต่างจากคลาส Java อื่น ๆ -
มีตัวสร้างเริ่มต้นที่ไม่มีอาร์กิวเมนต์
ควรเป็นอนุกรมและสิ่งที่สามารถใช้ Serializable อินเตอร์เฟซ.
มันอาจมีคุณสมบัติหลายอย่างที่สามารถอ่านหรือเขียนได้
มันอาจมีจำนวน "getter"และ"setter"วิธีการสำหรับคุณสมบัติ
คุณสมบัติ JavaBeans
คุณสมบัติ JavaBean คือแอ็ตทริบิวต์ที่มีชื่อซึ่งผู้ใช้อ็อบเจ็กต์สามารถเข้าถึงได้ แอตทริบิวต์สามารถเป็นประเภทข้อมูล Java ใดก็ได้รวมถึงคลาสที่คุณกำหนด
คุณสมบัติ JavaBean อาจเป็น read, write, read only, หรือ write only. คุณสมบัติ JavaBean ถูกเข้าถึงผ่านสองวิธีในคลาสการใช้งานของ JavaBean -
ส. | วิธีการและคำอธิบาย |
---|---|
1 | ได้รับPropertyName() ตัวอย่างเช่นถ้าชื่อคุณสมบัติเป็นfirstNameชื่อเมธอดของคุณจะเป็นgetFirstName()เพื่ออ่านคุณสมบัตินั้น วิธีนี้เรียกว่า accessor |
2 | ชุดPropertyName() ตัวอย่างเช่นถ้าชื่อคุณสมบัติเป็นfirstNameชื่อเมธอดของคุณจะเป็นsetFirstName()เพื่อเขียนคุณสมบัตินั้น วิธีนี้เรียกว่า mutator |
แอตทริบิวต์แบบอ่านอย่างเดียวจะมีเพียงไฟล์ getPropertyName() method และแอตทริบิวต์แบบเขียนอย่างเดียวจะมีเพียงไฟล์ setPropertyName() วิธี.
ตัวอย่าง JavaBeans
พิจารณาชั้นเรียนของนักเรียนที่มีคุณสมบัติน้อย -
package com.tutorialspoint;
public class StudentsBean implements java.io.Serializable {
private String firstName = null;
private String lastName = null;
private int age = 0;
public StudentsBean() {
}
public String getFirstName(){
return firstName;
}
public String getLastName(){
return lastName;
}
public int getAge(){
return age;
}
public void setFirstName(String firstName){
this.firstName = firstName;
}
public void setLastName(String lastName){
this.lastName = lastName;
}
public void setAge(Integer age){
this.age = age;
}
}
การเข้าถึง JavaBeans
useBeanการดำเนินการประกาศ JavaBean สำหรับใช้ใน JSP เมื่อประกาศแล้ว bean จะกลายเป็นตัวแปรสคริปต์ที่สามารถเข้าถึงได้โดยทั้งองค์ประกอบการเขียนสคริปต์และแท็กแบบกำหนดเองอื่น ๆ ที่ใช้ใน JSP ไวยากรณ์แบบเต็มสำหรับแท็ก useBean มีดังนี้ -
<jsp:useBean id = "bean's name" scope = "bean's scope" typeSpec/>
ค่าสำหรับแอตทริบิวต์ขอบเขตสามารถเป็นไฟล์ page, request, session หรือ application basedตามความต้องการของคุณ ค่าของid แอตทริบิวต์อาจเป็นค่าใดก็ได้ตราบเท่าที่เป็นชื่อที่ไม่ซ้ำกัน useBean declarations ใน JSP เดียวกัน
ตัวอย่างต่อไปนี้แสดงวิธีใช้การดำเนินการ useBean -
<html>
<head>
<title>useBean Example</title>
</head>
<body>
<jsp:useBean id = "date" class = "java.util.Date" />
<p>The date/time is <%= date %>
</body>
</html>
คุณจะได้รับผลดังต่อไปนี้ - -
The date/time is Thu Sep 30 11:18:11 GST 2010
การเข้าถึงคุณสมบัติ JavaBeans
พร้อมด้วย <jsp:useBean...> คุณสามารถใช้ไฟล์ <jsp:getProperty/> การดำเนินการเพื่อเข้าถึงเมธอด get และไฟล์ <jsp:setProperty/>การดำเนินการเพื่อเข้าถึงวิธีการตั้งค่า นี่คือไวยากรณ์แบบเต็ม -
<jsp:useBean id = "id" class = "bean's class" scope = "bean's scope">
<jsp:setProperty name = "bean's id" property = "property name"
value = "value"/>
<jsp:getProperty name = "bean's id" property = "property name"/>
...........
</jsp:useBean>
แอตทริบิวต์ name อ้างอิง id ของ JavaBean ที่แนะนำก่อนหน้านี้กับ JSP โดยแอ็คชัน useBean แอตทริบิวต์คุณสมบัติคือชื่อของget หรือ set วิธีการที่ควรเรียกใช้
ตัวอย่างต่อไปนี้แสดงวิธีการเข้าถึงข้อมูลโดยใช้ไวยากรณ์ด้านบน -
<html>
<head>
<title>get and set properties Example</title>
</head>
<body>
<jsp:useBean id = "students" class = "com.tutorialspoint.StudentsBean">
<jsp:setProperty name = "students" property = "firstName" value = "Zara"/>
<jsp:setProperty name = "students" property = "lastName" value = "Ali"/>
<jsp:setProperty name = "students" property = "age" value = "10"/>
</jsp:useBean>
<p>Student First Name:
<jsp:getProperty name = "students" property = "firstName"/>
</p>
<p>Student Last Name:
<jsp:getProperty name = "students" property = "lastName"/>
</p>
<p>Student Age:
<jsp:getProperty name = "students" property = "age"/>
</p>
</body>
</html>
ให้เราสร้างไฟล์ StudentsBean.classมีอยู่ใน CLASSPATH เข้าถึง JSP ด้านบน ผลลัพธ์ต่อไปนี้จะปรากฏขึ้น -
Student First Name: Zara
Student Last Name: Ali
Student Age: 10