Re: Дизайн приложения с использованием EJB
От: Nicht Россия  
Дата: 18.11.08 08:22
Оценка: 2 (2) +1
Здравствуйте, Аноним, Вы писали:

А>Приветствую. Столкнулся со следующей ситуацией, на новом проекте используется EJB, я с ним раньше не работал.

А>Более-менее разобрался как получить доступ к бину, вызывать методы и т.д. Теперь возникла проблема как это всё использовать, имеем стандартное веб-приложение. Собратья по проекту говорят, что надо всю логику положить в EJB, в их коде это выглядить как пара десятков session-bean'ов на проект (размером в несколько килострок), где намешана логика, работа с DB и т.п. Говорят, что в бинах удобно настраивается транзакционность, поэтому работа с БД должна вестись оттуда. Пока у меня были преимущественно DAO-методы, я не напрягался, клал их в соответствующий бин и вызывал из веб-части. Сейчас в программу предстоит добавить довольно много логики, мне кажется неразумным каждый класс оформлять в бин (например если это обычный java-класс, заполняющий какую-нибудь структурку, никаких операций с базой и вызовов извне и т.д.).

А>Подскажите, что можно почитать чтобы понять как лучше организовать код с использованием session beans. Я склоняюсь к тому, чтобы в бины вынести интерфейс ко всему, что вызывается из веб-части (т.е. обработчики всего в вебе просто получают соответствующий бин и вызывают его метод). Логику, имхо, можно хранить в обычных классах, стоит ли оформлять DAO в виде EJB (используем JDBC)? Спасибо!


Вообще удивительно. Ты совсем недавно используешь EJB а уже задался вопросом который мучает всех начиная еще с первых версий EE спецификации. Да, как раз почти все так и делают. Всю логику переносят в POJO, а session beans делают транспортом и местом котроля транцакций и безопасности. Вообще этот фундаментальный вопрос и эта техника построения приложения был предпосылкой для создания spring framework, которая, в общем то, и реализует подобный подход только в более общем виде.
Дизайн приложения с использованием EJB
От: Аноним  
Дата: 17.11.08 20:20
Оценка:
Приветствую. Столкнулся со следующей ситуацией, на новом проекте используется EJB, я с ним раньше не работал.
Более-менее разобрался как получить доступ к бину, вызывать методы и т.д. Теперь возникла проблема как это всё использовать, имеем стандартное веб-приложение. Собратья по проекту говорят, что надо всю логику положить в EJB, в их коде это выглядить как пара десятков session-bean'ов на проект (размером в несколько килострок), где намешана логика, работа с DB и т.п. Говорят, что в бинах удобно настраивается транзакционность, поэтому работа с БД должна вестись оттуда. Пока у меня были преимущественно DAO-методы, я не напрягался, клал их в соответствующий бин и вызывал из веб-части. Сейчас в программу предстоит добавить довольно много логики, мне кажется неразумным каждый класс оформлять в бин (например если это обычный java-класс, заполняющий какую-нибудь структурку, никаких операций с базой и вызовов извне и т.д.).

Подскажите, что можно почитать чтобы понять как лучше организовать код с использованием session beans. Я склоняюсь к тому, чтобы в бины вынести интерфейс ко всему, что вызывается из веб-части (т.е. обработчики всего в вебе просто получают соответствующий бин и вызывают его метод). Логику, имхо, можно хранить в обычных классах, стоит ли оформлять DAO в виде EJB (используем JDBC)? Спасибо!
Re: Дизайн приложения с использованием EJB
От: DenysSG  
Дата: 18.11.08 02:43
Оценка:
Mastering Enterprise JavaBeans Third Edition если 2.1.
или
Mastering Enterprise JavaBeans 3.0 если 3.0
Re: Дизайн приложения с использованием EJB
От: cvoronin Россия  
Дата: 18.11.08 15:21
Оценка:
Здравствуйте, Аноним, Вы писали:
А> Логику, имхо, можно хранить в обычных классах, стоит ли оформлять DAO в виде EJB (используем JDBC)?

Логику хранить в виде pojo хорошо, но возникает проблема разрешения зависимостей — ejb-инжекции работать не будут, а при отсутствии спринга прийдётся дополнительно поработать руками.

Насчёт dao, ejb и jdbc — имеется в виду доступ к БД через jdbc-драйвер или же работа с данными только через jdbc-код? Отчего бы не взять пул коннеций у апп. сервера и не использовать бы какую-нибудь JPA-реализацию? Ведь и поддержка транзакций в EJB на использование JPA завязана, не на нативный jdbc-код.
Re[2]: Дизайн приложения с использованием EJB
От: Аноним  
Дата: 18.11.08 18:13
Оценка:
Здравствуйте, DenysSG, Вы писали:

DSG>Mastering Enterprise JavaBeans Third Edition если 2.1.

DSG>или
DSG>Mastering Enterprise JavaBeans 3.0 если 3.0

Толстые книжки. А если в 2-х словах?
Re[2]: Дизайн приложения с использованием EJB
От: Аноним  
Дата: 18.11.08 21:20
Оценка:
Спасибо, скачаю почитать!

Здравствуйте, DenysSG, Вы писали:

DSG>Mastering Enterprise JavaBeans Third Edition если 2.1.

DSG>или
DSG>Mastering Enterprise JavaBeans 3.0 если 3.0
Re: Дизайн приложения с использованием EJB
От: flashface  
Дата: 19.11.08 12:14
Оценка:
Еще есть такая книжка: EJB 3 in Action
Re[2]: Дизайн приложения с использованием EJB
От: elmal  
Дата: 19.11.08 14:04
Оценка:
Здравствуйте, Nicht, Вы писали:

N>Вообще удивительно. Ты совсем недавно используешь EJB а уже задался вопросом который мучает всех начиная еще с первых версий EE спецификации.

Если есть нормальный опыт программирования на любом языке в команде, которая уделяет внимание архитектуре, а не тонкостям технологий, то ничего удивительного нет, вопросы вполне очевидные. А если технологии первичны, то так и будем писать всю логику в одном классе на тысячи строк без разделения на слои.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.