English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

JSP-JavaBean

JavaBean ist eine spezielle Java-Klasse, die in Java geschrieben ist und die JavaBean API-Normen einhält.

Nachfolgend werden die einzigartigen Eigenschaften von JavaBean im Vergleich zu anderen Java-Klassen angegeben:

  • Stellt einen Standardkonstruktor ohne Parameter zur Verfügung.

  • Muss serialisiert werden und das Serializable-Interface implementieren.

  • Es kann eine Reihe von lesbaren und schreibbaren Eigenschaften geben.

  • Es kann eine Reihe von Getter oder setter Methode.

JavaBean-Eigenschaften

Die Eigenschaften eines JavaBean-Objekts sollten zugänglich sein. Diese Eigenschaft kann jede gültige Java-Datentyp sein, einschließlich selbstdefinierter Java-Klassen.

Die Eigenschaften eines JavaBean-Objekts können lesbar und schreibbar, oder nur lesbar, oder nur schreibbar sein. Die Eigenschaften eines JavaBean-Objekts werden durch zwei Methoden der JavaBean-Implementierungsklasse erreicht:

MethodeBeschreibung
getPropertyName() Zum Beispiel, wenn der Name der Eigenschaft myName ist, dann muss der Name der Methode getMyName() sein, um diese Eigenschaft zu lesen. Diese Methode wird auch als Lesemethode bezeichnet.
setPropertyName() Zum Beispiel, wenn der Name der Eigenschaft myName ist, dann muss der Name der Methode setMyName() sein, um diese Eigenschaft zu schreiben. Diese Methode wird auch als Schreibmethode bezeichnet.

Eine schreibgeschützte Eigenschaft bietet nur die Methode getPropertyName(), eine lesbare Eigenschaft bietet nur die Methode setPropertyName().

JavaBean-Programmbeispiel

Dies ist die Datei StudentBean.java:

package com.w3codebox;
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;
   {}
{}

Kompilieren Sie die Datei StudentBean.java (der letzte Beispiel wird verwendet):

$ javac StudentsBean.java

Nach der Kompilierung erhalten StudentBean.class Datei, kopieren Sie sie in <JSP-Projekt>/WebContent/WEB-INF/classes/com/w3codebox, wie im folgenden Bild gezeigt:

Zugriff auf JavaBean

Der <jsp:useBean>-Tag kann in JSP verwendet werden, um einen JavaBean zu deklarieren und zu verwenden. Nach der Deklaration wird das JavaBean-Objekt ein Skriptvariable und kann durch Skriptelemente oder andere benutzerdefinierte Tags aufgerufen werden. Die Syntax des <jsp:useBean>-Tags ist wie folgt:

<jsp:useBean id="bean 的名字" scope="bean 的作用域" typeSpec/>

Der Wert von "scope" kann je nach Situation "page", "request", "session" oder "application" sein. Der Wert von "id" kann frei gewählt werden, solange er nicht mit dem Wert eines anderen <jsp:useBean> im selben JSP-Dokument übereinstimmt.

Hiermit wird ein einfaches Beispiel für die Verwendung des <jsp:useBean>-Tags gegeben:

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<html>
<head>
<title>useBean Beispiel</title>
</head>
<body>
<jsp:useBean id="date" /> 
<p>Das Datum ist: <%= date %>
</body>
</html>

Es wird das folgende Ergebnis erzeugt:

Das Datum ist: Tue Jun 28 15:22:24 CST 2016

auf die Eigenschaften von JavaBean-Objekten zuzugreifen

um <jsp:useBean> im Hauptteil der <jsp:getProperty/> durch den Befehl getter Verfahren, um <jsp:setProperty/> durch den Befehl setter Die Syntax des Verfahrens ist wie folgt:

<jsp:useBean id="id" scope="bean 作用域">
   <jsp:setProperty name="bean 的 id" property="属性名"  
                    value="value"/>
   <jsp:getProperty name="bean 的 id" property="属性名"/>
   ...........
</jsp:useBean>

Das Attribut "name" bezieht sich auf die "id"-Eigenschaft des Beans. Das Attribut "property" bezieht sich auf die Getter- oder Setter-Methode, die aufgerufen werden soll.

Hiermit wird ein einfaches Beispiel für den Zugriff auf Eigenschaften mit der obigen Syntax gegeben:

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<html>
<head>
<title>Beispiel für get- und set-Attribute</title>
</head>
<body>
<jsp:useBean id="students"> 
                   > 
   <jsp:setProperty name="students" property="firstName">
                    value="Xiaoqiang"/>
   <jsp:setProperty name="students" property="lastName"> 
                    value="Wang"/>
   <jsp:setProperty name="students" property="age">
                    value="10"/>
</jsp:useBean>
<p>Vorname des Schülers: 
   <jsp:getProperty name="students" property="firstName">/>
</p>
<p>Familienname des Schülers: 
   <jsp:getProperty name="students" property="lastName">/>
</p>
<p>Alter des Schülers: 
   <jsp:getProperty name="students" property="age">/>
</p>
</body>
</html>

Der Ausführungsresultat der folgenden JSP ist wie folgt:

Vorname des Schülers: Xiaoqiang
Familienname des Schülers: Wang
Alter des Schülers: 10