Что такое JavaBean и зачем он мне нужен? Так как я могу создавать все приложения с классом и структурой интерфейса? Зачем мне бобы? И можете ли вы дать мне несколько примеров, где бины необходимы вместо классов и интерфейсов?
Пожалуйста, объясните сущность бина в следующем контексте:
- Приложения для Wep
- Автономные приложения
Ответы:
Они часто просто представляют данные реального мира. Вот простой пример Javabean:
Реализация
Serializable
не обязательна сама по себе, но очень полезна, если вы хотите сохранить или перенести Javabeans вне памяти Java, например, на жесткий диск или по сети.Например, в классе DAO вы можете использовать его для создания списка пользователей, в котором вы храните данные
user
таблицы в базе данных:Например, в классе Servlet вы можете использовать его для передачи данных из базы данных в пользовательский интерфейс:
Например, на странице JSP вы можете получить к ней доступ по EL , следуя соглашениям Javabean, для отображения данных:
Имеет ли это смысл? Видите ли, это своего рода соглашение, которое вы можете использовать повсюду для хранения , передачи и доступа к данным.
Смотрите также:
источник
Сами бобы
JavaBeans есть везде, это соглашение, и почти каждая немного большая библиотека использует эти соглашения для автоматизации вещей. Вот лишь несколько причин, по которым следует использовать JavaBeans:
Также есть, конечно, Enterprise JavaBeans, которые являются совершенно другим вопросом и не должны смешиваться с простыми JavaBeans. Я просто хотел упомянуть EJB: s, потому что имена похожи, и эти два легко перепутать.
Бобы в веб-приложениях
Если вы рассматриваете «нормальные» JavaBeans в контексте веб-приложения, они имеют больше смысла, чем носить обувь на ногах. Поскольку спецификация Servlet требует, чтобы сеансы были сериализуемыми, это означает, что вы должны хранить свои данные в сеансе как нечто сериализуемое - почему бы тогда не сделать его бином! Просто добавьте ваш SomeBusinessDataBean в сессию, и все готово, смехотворно просто, соответствует спецификациям и удобно.
Также легко передавать эти данные по приложению, поскольку JavaBeans помогает полностью отделить части вашего приложения. Представьте, что JavaBeans - это письмо, а различные подсистемы приложения - как отделы в очень крупной корпорации: Dept.A отправляет кучу данных в Dept.B, Dept.B не знает - или даже не заботится - откуда эти данные пришли как и должно быть, можно просто открыть письмо, прочесть что-то из него и сделать свое дело на основе этих данных.
Бобы в автономных приложениях
На самом деле вышесказанное относится и к автономным приложениям, единственное отличие состоит в том, что вы можете немного больше испортить пользовательский интерфейс, поскольку автономные приложения имеют пользовательские интерфейсы с сохранением состояния, в то время как веб-приложения имеют пользовательский интерфейс statelss, который в некоторых случаях имитирует только пользовательские интерфейсы с состоянием. , Из-за этой разницы проще создать путаницу с автономным приложением, но это стоит совсем другой темы и не имеет прямого отношения к JavaBeans вообще.
источник
Боб на самом деле ничего особенного. Для того, чтобы класс был «бином», все, что ему требуется, это:
К этому можно добавить методы получения и установки для свойств класса, которые соответствуют определенному соглашению об именах, если вы хотите, чтобы поля были обнаруживаемыми в определенных обстоятельствах (например, сделав этот класс некоторым объектом, который вы можете перетаскивать из визуального редактора в IDE, например).
Вы можете найти больше непосредственно от Солнца здесь .
источник
Java Bean - это программный компонент, разработанный для многократного использования в различных средах. Нет никаких ограничений на возможности Бина. Он может выполнять простую функцию, такую как проверка правописания документа, или сложную функцию, такую как прогнозирование портфеля акций. Бин может быть виден конечному пользователю. Одним из примеров этого является кнопка на графическом интерфейсе пользователя. Бин также может быть невидимым для пользователя. Программное обеспечение для декодирования потока мультимедийной информации в режиме реального времени является примером такого типа строительного блока. Наконец, Bean-компонент может быть разработан для автономной работы на рабочей станции пользователя или для совместной работы с набором других распределенных компонентов. Программное обеспечение для генерации круговой диаграммы из набора точек данных является примером Бина, который может выполняться локально. Тем не мение,
Вскоре мы увидим, какие конкретные изменения должен внести разработчик программного обеспечения в класс, чтобы его можно было использовать в качестве Java Bean. Однако одна из целей разработчиков Java состояла в том, чтобы упростить использование этой технологии. Поэтому изменения кода минимальны.
Преимущества Java Beans
Архитектура программных компонентов обеспечивает стандартные механизмы для работы со строительными блоками программного обеспечения. В следующем списке перечислены некоторые конкретные преимущества, которые технология Java предоставляет разработчику компонентов:
Вот простой пример Javabean:
Это настоящий Бин с именем MyBean, имеющий состояние (переменная theValue), которое будет автоматически сохранено и восстановлено механизмом персистентности JavaBeans, и у него есть свойство с именем MyValue, которое можно использовать в среде визуального программирования. Этот Бин не имеет визуального представления, но это не является обязательным требованием для компонента JavaBean.
источник