English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
JavaBean es una clase Java especial, escrita en Java y que sigue las especificaciones de la API JavaBean.
A continuación, se presentan las características únicas de JavaBean en comparación con otras clases Java:
Proporciona un constructor sin parámetros por defecto.
Necesita ser serializado y ha implementado el interfaz Serializable.
puede haber una serie de propiedades de lectura y escritura.
puede haber una serie de getter o setter método.
Las propiedades de un objeto JavaBean deben ser accesibles. Esta propiedad puede ser de cualquier tipo de datos Java válido, incluyendo clases Java personalizadas.
Las propiedades de un objeto JavaBean pueden ser de solo lectura, o de solo escritura, o de lectura y escritura. Las propiedades de un objeto JavaBean se acceden a través de dos métodos proporcionados por la clase implementadora de JavaBean:
método | descripción |
---|---|
getPropertyName() | Por ejemplo, si el nombre de la propiedad es myName, el nombre de este método debe ser written como getMyName() para leer esta propiedad. Este método también se llama accesor. |
setPropertyName() | Por ejemplo, si el nombre de la propiedad es myName, el nombre de este método debe ser written como setMyName() para escribir esta propiedad. Este método también se llama escritor. |
Una propiedad de solo lectura proporciona solo el método getPropertyName(), una propiedad de solo escritura proporciona solo el método setPropertyName().
Este es el archivo 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; {} {}
compilar el archivo StudentBean.java (el último ejemplo lo usará):
$ javac StudentsBean.java
compilado se obtiene StudentBean.class archivo, cópielo a <Proyecto JSP>/WebContent/WEB-INF/classes/com/w3codebox, como se muestra en la siguiente imagen:
La etiqueta <jsp:useBean> puede declarar un JavaBean en JSP y luego usarlo. Después de la declaración, el objeto JavaBean se convierte en una variable de script y se puede acceder a través de elementos de script u otros etiquetas personalizadas. La sintaxis de la etiqueta <jsp:useBean> es la siguiente:
<jsp:useBean id="nombre del bean" scope="alcance del bean" typeSpec/>
Dentro de este contexto, según la situación específica, el valor de scope puede ser page, request, session o application. El valor de id puede ser cualquier cosa siempre y cuando no coincida con el valor de id de otro <jsp:useBean> en el mismo archivo JSP.
A continuación, se proporciona un uso simple de la etiqueta <jsp:useBean>:
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <html> <head> <title> Ejemplo de useBean</title> </head> <body> <jsp:useBean id="date" /> <p>La fecha es: <%= date %> </body> </html>
Esto producirá el siguiente resultado:
La fecha es: Mar Jun 28 15:22:24 CST 2016
en <jsp:useBean en el cuerpo de la etiqueta <jsp:getProperty/> se invoca utilizando la etiqueta getter método, se utiliza <jsp:setProperty/> se invoca utilizando la etiqueta setter La sintaxis del método es la siguiente:
<jsp:useBean id="id" scope="alcance del bean"> <jsp:setProperty name="bean de la id" property="nombre de la propiedad" value="valor"/> <jsp:getProperty name="bean de la id" property="nombre de la propiedad"/> ........... </jsp:useBean>
El atributo name se refiere al atributo id del Bean. El atributo property se refiere al método getter o setter que se desea invocar.
A continuación, se proporciona un ejemplo simple de acceso a propiedades utilizando la sintaxis anterior:
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <html> <head> <title>Ejemplo de get y set de propiedades</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>Nombre del estudiante: <jsp:getProperty name="students" property="firstName">/> </p> <p>Apellido del estudiante: <jsp:getProperty name="students" property="lastName">/> </p> <p>Edad del estudiante: <jsp:getProperty name="students" property="age">/> </p> </body> </html>
El resultado de ejecutar el siguiente JSP es el siguiente:
Nombre del estudiante: Xiaoqiang Apellido del estudiante: Wang Edad del estudiante: 10