2015-01-14 5 views
0

После пружинные документы, я создал проект Maven со следующими зависимостями:Spring MVC Repository и Hibernate

<dependencies> 
    <dependency> 
     <groupId>org.postgresql</groupId> 
     <artifactId>postgresql</artifactId> 
     <version>9.3-1102-jdbc41</version> 
    </dependency> 
    <dependency> 
     <groupId>org.hibernate</groupId> 
     <artifactId>hibernate-entitymanager</artifactId> 
    </dependency> 
    <dependency> 
     <groupId>org.springframework.boot</groupId> 
     <artifactId>spring-boot-starter-thymeleaf</artifactId> 
    </dependency> 
    <dependency> 
     <groupId>org.springframework.boot</groupId> 
     <artifactId>spring-boot-starter-web</artifactId> 
    </dependency> 
    <dependency> 
     <groupId>org.springframework.boot</groupId> 
     <artifactId>spring-boot-starter-data-jpa</artifactId> 
    </dependency> 
    <dependency> 
     <groupId>org.springframework.boot</groupId> 
     <artifactId>spring-boot-starter-test</artifactId> 
     <scope>test</scope> 
    </dependency> 
</dependencies> 

Я хотел бы знать, если абстракция Repository данных «проходит через» спящий режим или нет.

ответ

1

Из справочной документации:

28,3 JPA и «Spring Data»

Интерфейс API Java Persistence является стандартной технологией, которая позволяет «карта» объектов в реляционных базах данных. Spring-boot-starter-data-jpa POM обеспечивает быстрый способ начать работу. Он предоставляет следующие ключевые зависимости:

Hibernate - одна из самых популярных реализаций JPA.

Spring Data JPA - упрощает реализацию репозиториев на базе JPA.

Весна ORMs - поддержка Core ORM от Spring Framework.

Таким образом, ответ «Да».

BTW, Spring создаст и автоматически загрузит компоненты EntityManagerFactory и DataSource, объявив зависимость spring-boot-starter-data-jpa.

1

Если вы не знаете, какие зависимости у вашего проекта есть, вы можете использовать maven-dependency-plugin. В частности, вы можете использовать dependency:tree, чтобы получить иерархическое древовидное представление всех зависимостей и их транзитивных зависимостей (или dependency:list, чтобы получить простой список), например.

$ mvn dependency:tree 

И ответить на ваш вопрос: Да, весна-загрузки-стартер-данных JPA действительно зависит от Hibernate:

[INFO] +- org.springframework.boot:spring-boot-starter-data-jpa:jar:1.2.0.RELEASE:compile 
[INFO] | +- 
[INFO] | +- org.hibernate:hibernate-entitymanager:jar:4.3.7.Final:compile 
[INFO] | | +- 
[INFO] | | +- org.hibernate:hibernate-core:jar:4.3.7.Final:compile 
[INFO] | | | +- 
[INFO] | | +- 
[INFO] | | +- org.hibernate.common:hibernate-commons-annotations:jar:4.0.5.Final:compile 
[INFO] | | +- org.hibernate.javax.persistence:hibernate-jpa-2.1-api:jar:1.0.0.Final:compile 
[INFO] | | +-