Spring, Hibernate, Java EE в 3-х уровневой архитектуре - PullRequest
7 голосов
/ 08 августа 2010

Мне нужно начать с того, куда я положил эти технологии в трехуровневую архитектуру: вот что у меня есть ...

  • уровень представления: HTML, JSP

  • приложение.уровень: Java EE, Spring

  • уровень доступа к данным: Hibernate, база данных PostgreSQL

Ответы [ 3 ]

29 голосов
/ 08 августа 2010

Вы смешиваете Tier и Layer, что делает вещи довольно запутанными, особенно для себя!Если ваш вопрос касается слоев, то задайте вопрос о слоях.

В любом случае, позвольте мне попытаться уточнить ...

В Трехуровневой архитектуре Уровни состоят из:

  • the Клиентский уровень (или Уровень презентации),
  • Бизнес-уровень (или Средний уровень или Логический уровень или Уровень приложения и т. Д.),
  • the Корпоративные информационные системы (EIS) Уровень (или Уровень данных).

А вот типичные слои многослойного приложения:

  • Уровень представления : Сервлет / JSP
  • Сервисный уровень : Spring Services + Spring Транзакции или EJB Session Beans
  • Уровень домена : POJO
  • Уровень доступа к данным : Hibernate / JPA
  • Физический уровень : База данных, LDAP, файловая система и т. Д.

Hibernate будет частью уровня доступа к данным (но PostgreSQL является частью Physical Layer ).

Презентация , Служба , Домен , Уровни доступа к данным сопоставляются с Бизнес-уровнем . Физический уровень отображается на Уровень данных .

1 голос
/ 08 августа 2010

Если вы хотите использовать Spring MVC, он, скорее всего, будет жить на уровне презентации.

1 голос
/ 08 августа 2010

Да, я бы поставил Hibernate на уровень доступа к данным. Фактически, третий уровень - это «Уровень данных», а не уровень доступа к данным, возможно, это вас смущает. Таким образом, все, что связано с бизнес-логикой, переходит на уровень приложения (или бизнеса).

...