Какой наилучший способ доступа к базе данных в среде JEE6?

#mysql #servlets #jsf-2 #data-access-layer #java-ee-6

#mysql #сервлеты #jsf-2 #уровень доступа к данным #java-ee-6

Вопрос:

Мы используем Glassfish3.1, MySQL 5.5, JSF2, Servlet3.

О приложении — Это приложение для мониторинга, в котором пользователи не собираются вводить или изменять какие-либо данные. В нем будет много диаграмм, как статических, так и динамических (в реальном времени).

В этом случае, какой будет наилучший способ получить данные из базы данных?

Достаточно ли использовать Servlet и EntityManager только специально для графиков в реальном времени? Требуются ли транзакции и EJB в этом случае?

Ответ №1:

В JSF 2.0 больше не должно быть необходимости в сервлетах. Важны управляемые компоненты. Вам определенно следует использовать JPA 2.0 для доступа к базе данных ( EntityManager как вы сами говорите). Использовать EJB или нет, зависит от размера приложения. Если она небольшая, с отсутствием или очень небольшим количеством общих бизнес-компонентов, то EJB, возможно, излишен. Но помимо этого, вам определенно следует использовать EJB. Затем EJB, в свою очередь, должен использовать исключительно EntityManager , а управляемые компоненты должны использовать исключительно EJB.