Какая точка beans?

У меня есть bean выполнение некоторых обучающих программ JSP, и я не понимаю, что такое точка класса bean. Все, что есть, это методы get и set. почему мы их используем?

public class UserData {

String username;
String email;
int age;

public void setUsername( String value )
{
    username = value;
}

public void setEmail( String value )
{
    email = value;
}

public void setAge( int value )
{
    age = value;
}

public String getUsername() { return username; }

public String getEmail() { return email; }

public int getAge() { return age; }

}

а jsp -

<jsp:useBean id="user" class="user.UserData" scope="session"/> 
<HTML>
<BODY>
You entered<BR>
Name: <%= user.getUsername() %><BR>
Email: <%= user.getEmail() %><BR>
Age: <%= user.getAge() %><BR>
</BODY>
</HTML>

Ответы

Ответ 1

  • A Bean получает все преимущества Java-парадигмы "write-once, run-where". Свойства, события и методы Bean, которые подвергаются действию приложения Инструмент builder можно контролировать.

  • A Bean может быть спроектирован для правильной работы в разных локалях, что делает его полезными на мировых рынках.

  • Дополнительное программное обеспечение может быть предоставлено, чтобы помочь человеку настроить Bean. Это программное обеспечение требуется только тогда, когда устанавливаются параметры времени разработки для этого компонента. Это не требуется включать в среду выполнения. Настройки конфигурации Bean можно сохранить в постоянном хранилище и восстановить позже.

  • A Bean может регистрироваться для приема событий от других объектов и может генерировать события, которые отправляются другим объектам.

Использование сценариев (те <% %> вещи) действительно сильно обескуражено с момента рождения taglib (например, JSTL) и EL (Язык выражений, те ${} вещи) более десяти лет назад. Основными недостатками скриптлетов являются:

  • Повторяемость: вы не можете повторно использовать скрипты.

  • Заменяемость: вы не можете создавать абстрактные скриптлеты.

  • OO-способность: вы не можете использовать наследование/состав.

  • Отладка: если скриптлет порождает исключение наполовину, все, что вы получаете, - это пустая страница.

  • Проверка: скриптлеты не проверяются на единицу.

  • Поддержание работоспособности: для каждого сальдо требуется больше времени для поддержания смешанной/загроможденной/дублированной логики кода.

Ответ 2

Основной причиной JavaBeans является повторное использование. JavaBeans можно использовать в JSP, сервлетах и ​​других Java-технологиях.

Это простые сериализуемые объекты, которые используются для инкапсуляции многих объектов в один. I.e, мы можем отправить bean полностью определенную информацию о посылке каждого атрибута по отдельности через провод.

Ответ 3

Методы доступа (getter) и mutator (setter) обычно используются для обеспечения инкапсуляции. Поскольку переменные экземпляра являются частными, к ним можно обращаться только за пределами класса с помощью этих методов.

Итак, в непрофессионале: возможность внести изменения в код реализации, не нарушая код других пользователей, использующих ваш код, - это ключевое преимущество инкапсуляции.

Ответ 4

Я читал Свойства и привязку JavaFX там я получил практически смысл JavaBeans, вот абзац.

Язык программирования Java позволяет инкапсулировать данные внутри объекта, но он не применяет никаких конкретных имен соглашения для методов, которые вы определяете. Например, ваш код может определять класс Person, который инкапсулирует первое имя и Фамилия. Но без обозначения соглашений разные программисты могли бы выберите разные имена для этих методов: read_first(), firstName(), getFN() и т.д., все это будет совершенно правильный выбор. Однако существует не гарантируют, что эти имена будут значимыми для других разработчиков.

Архитектура компонента JavaBeans обратилась к этой проблеме с помощью определяя некоторые простые соглашения об именах, которые обеспечивают согласованность проекты. В программировании JavaBeans полные подписи для этих методы будут: public void setFirstName (имя строки), public String getFirstName(), public void setLastName (имя строки) и public Строка getLastName(). Этот шаблон имен легко узнаваем, оба программистам-человекам и инструментам редактирования, таким как IDE NetBeans. В терминологии JavaBeans объект Person содержит свойства firstName и lastName.

Модель JavaBeans также обеспечивает поддержку сложных типов свойств, плюс система доставки событий. Он также содержит ряд средств поддержки классы, все доступные как API в пакете java.beans. Поэтому освоение JavaBeans-программирования предполагает изучение требуемые соглашения об именах и соответствующий им API. (Для большего фоновое чтение на JavaBeans в целом, см. урок JavaBeans учебника Java).

Ответ 5

У вас может быть JSP без beans, однако результат будет заключаться в том, что и код, занимающийся логикой, и код, занимающийся эстетикой сайта, будет запутан. Это не идеально, потому что в большинстве случаев группа людей кодирует логику, а другая группа людей заботится об эстетике, поэтому beans позволяет достичь степени разделения, что облегчает жизнь людям, создающим веб-сайт.

Beans также позволяет повторно использовать код, что является еще одной причиной, по которой вы должны их использовать.

Ответ 6

В основном он используется для РЕГУЛИРОВАНИЯ. Это простые сериализуемые объекты, которые используются для инкапсуляции многих объектов в один.