JSP JavaBean
JavaBean ialah kelas Java khas, ditulis dalam bahasa Java dan mematuhi spesifikasi API JavaBean.
Berikut ialah ciri unik JavaBean berbanding dengan kelas Java yang lain:
Sediakan pembina tanpa hujah lalai.
Perlu bersiri dan melaksanakan antara muka Serializable.
Mungkin terdapat pelbagai sifat boleh dibaca dan boleh ditulis.
Mungkin terdapat satu siri kaedah "getter" atau "setter".
Sifat JavaBean
Sifat objek JavaBean harus boleh diakses. Atribut ini boleh menjadi sebarang jenis data Java yang sah, termasuk kelas Java tersuai.
Sifat objek JavaBean boleh dibaca-tulis, baca sahaja atau tulis sahaja. Sifat objek JavaBean diakses melalui dua kaedah yang disediakan dalam kelas pelaksanaan JavaBean:
方法 | 描述 |
---|---|
getPropertyName() | 举例来说,如果属性的名称为myName,那么这个方法的名字就要写成getMyName()来读取这个属性。这个方法也称为访问器。 |
setPropertyName() | 举例来说,如果属性的名称为myName,那么这个方法的名字就要写成setMyName()来写入这个属性。这个方法也称为写入器。 |
Sifat baca sahaja hanya menyediakan kaedah getPropertyName() dan sifat tulis sahaja hanya menyediakan kaedah setPropertyName().
Contoh program JavaBean
Ini ialah fail StudentBean.java:
package com.php; 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(int age) { this.age = age; } }
Kompilasi fail StudentBean.java (akan digunakan dalam contoh terakhir):
$ javac StudentsBean.java
Selepas penyusunan, dapatkan fail StudentBean.class dan salin ke <JSP Project>/WebContent/WEB-INF/classes/com/php, sebagai ditunjukkan dalam rajah di bawah :
Akses JavaBean
<jsp:useBean> teg boleh mengisytiharkan JavaBean dalam JSP dan kemudian menggunakannya. Selepas pengisytiharan, objek JavaBean menjadi pembolehubah skrip dan boleh diakses melalui elemen skrip atau teg tersuai lain. Format sintaks teg <jsp:useBean> adalah seperti berikut:
<jsp:useBean id="bean 的名字" scope="bean 的作用域" typeSpec/>
Antaranya, bergantung pada situasi tertentu, nilai skop boleh menjadi halaman, permintaan, sesi atau aplikasi. Nilai id boleh sewenang-wenangnya selagi ia tidak sama dengan nilai id dalam <jsp:useBean> yang lain dalam fail JSP yang sama.
Berikut ialah penggunaan mudah teg <jsp:useBean> objek JavaBean
gunakan teg
<jsp:getProperty/>dalam badan teg
<jsp:useBean>
untuk memanggilkaedah getter, gunakan teg <jsp:setProperty/> untuk memanggil kaedah setter Format sintaks adalah seperti berikut:
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <html> <head> <title>useBean 实例</title> </head> <body> <jsp:useBean id="date" class="java.util.Date" /> <p>日期为:<%= date %> </body> </html>nama atribut merujuk kepada atribut id bagi Bean . Atribut sifat merujuk kepada kaedah pengambil atau penetap yang ingin anda panggil. Berikut ialah contoh mudah menggunakan sintaks di atas untuk akses atribut:
日期为:Tue Jun 28 15:22:24 CST 2016Akses JSP di atas, dan keputusan yang dijalankan adalah seperti berikut:
<jsp:useBean id="id" class="bean 编译的类" scope="bean 作用域"> <jsp:setProperty name="bean 的 id" property="属性名" value="value"/> <jsp:getProperty name="bean 的 id" property="属性名"/> ........... </jsp:useBean>