В области вычислений на базе платформы Java JavaBeans — это технология, разработанная компанией Sun Microsystems и выпущенная в 1996 году как часть JDK 1.1.
«Бины» JavaBeans — это классы, которые инкапсулируют один или несколько объектов в один стандартизированный объект (бин). Эта стандартизация позволяет обрабатывать бины более общим образом, что упрощает повторное использование кода и интроспекцию . Это, в свою очередь, позволяет рассматривать бины как программные компоненты и визуально манипулировать ими с помощью редакторов и IDE без необходимости какой-либо начальной настройки или знания каких-либо внутренних деталей реализации.
В рамках стандартизации все компоненты должны быть сериализуемыми , иметь конструктор с нулевым аргументом и разрешать доступ к свойствам с помощью методов getter и setter .
Функциональность JavaBeans обеспечивается набором классов и интерфейсов в java.beans
пакете.
Чтобы функционировать как класс JavaBean , класс объекта должен подчиняться определенным соглашениям об именовании методов, построении и поведении. Эти соглашения позволяют иметь инструменты, которые могут использовать, повторно использовать, заменять и подключать Java Beans.
Требуются следующие соглашения:
проигрыватель пакетов ; открытый класс PersonBean реализует java . io . Serializable { /** Свойства **/ private boolean died = false ; Список частных лиц ; /** Свойство "name", доступно для чтения/записи. */ private String name = null ; /** Конструктор без аргументов (не принимает аргументов). */ public PersonBean () { } public List getList ( ) { return list ; } public void setList ( final List list ) { this.list = list ; } /** * Геттер для свойства "name". */ public String getName () { return name ; } /** * Сеттер для свойства "name". * * @param value */ public void setName ( final String value ) { this . name = value ; } /** * Геттер для свойства "deceased" * Другой синтаксис для логического поля (is и get) */ public boolean isDeceased () { return died ; } /** * Сеттер для свойства "умерший". * @param value */ public void setDeceased ( boolean value ) { died = value ; } }
TestPersonBean.java
:
импортировать player.PersonBean ; /** * Класс "TestPersonBean". */ public class TestPersonBean { /** * Метод тестера "main" для класса "PersonBean". * * @param arguments */ public static void main ( final String [] arguments ) { final PersonBean person = new PersonBean (); person.setName ( "Боб " ) ; person.setDeceased ( false ) ; person.setList ( new ArrayList ( ) ) ; // Вывод: "Боб [жив]" System.out.print ( person.getName ( ) ) ; System.out.println ( person.isDeceased ( ) ? " [ умер ]" : " [ жив ] " ); } }
<jsp:useBean id= "person" class= "player.PersonBean" scope= "page" /> <jsp:setProperty name= "person" property= "*" /> <html> <body> Имя: <jsp:getProperty name= "person" property= "name" /><br/> Умер? <jsp:getProperty name= "person" property= "deceased" /><br/> <br/> <form name= "beanTest" method= "POST" action= "testPersonBean.jsp" > Введите имя : <input type= "text" name= "name" size= "50" ><br/> Выберите вариант : <select name= "deceased" > <option value= "false" > Жив </option> <option value= "true" > Мертв </option> </select> <input type= "submit" value= "Test the Bean" > </form> </body> </html>