它是什麼
它是Spring基於ORM框架,JPA規範封裝的一套JPA應用框架.,可以使開發者使用極簡的代碼即可實現對數據的訪問和操作.它提供了包括增刪改查等在內的常用功能,易於擴展.
Spring-Data-JPA有什麼
提供的編成接口及其對應的用途
繼承關係圖
如何使用
首先,先創建好jpa的配置文件(以最初始的用persistence.xml文件的配置方式),如下:
<?xml version="1.0" encoding="UTF-8"?>
<persistence xmlns="http://java.sun.com/xml/ns/persistence" version="2.0">
<persistence-unit name="defaultPersistenceUnit" ="RESOURCE_LOCAL">
<provider>org.hibernate.ejb.HibernatePersistence</provider>
<properties>
<!-- 使用MySQL方言 -->
<property name="hibernate.dialect" value="org.hibernate.dialect.MySQL5Dialect"/>
<!-- 數據庫連接的URL地址 -->
<property name="hibernate.connection.url"
value="jdbc:mysql://localhost:3306/spring"/>
<!-- 數據庫連接的驅動 -->
<property name="hibernate.connection.driver_class" value="com.mysql.jdbc.Driver"/>
<!-- 數據庫連接的用戶名 -->
<property name="hibernate.connection.username" value="root"/>
<!-- 數據庫連接的密碼 -->
<property name="hibernate.connection.password" value="314"/>
<!-- 顯示SQL語句 -->
<property name="hibernate.show_sql" value="true"/>
<property name="hibernate.connection.useUnicode" value="true"/>
<property name="hibernate.connection.characterEncoding" value="UTF-8"/>
<!-- 在顯示SQL語句時格式化語句 -->
<property name="hibernate.format_sql" value="true"/>
<property name="hibernate.use_sql_comments" value="false"/>
<!-- 自動輸出schema創建DDL語句 -->
<property name="hibernate.hbm2ddl.auto" value="create"/>
<!-- 數據庫連接超時後自動重連 -->
<property name="hibernate.connection.autoReconnect" value="true"/>
<property name="connection.autoReconnectForPools" value="true"/>
<property name="connection.is-connection-validation-required" value="true"/>
</properties>
</persistence-unit>
</persistence>
配置完如上文件,剩下的,需要在Spring的配置文檔ApplicationContext.xml中加入如下:
<!--第一步-->
<!--定義要用到的包掃描路徑-->
//這裏根據自己的實際情況來寫.
<!--第二步-->
<!--定義實體的工廠Bean,注意下方的UnitName不要寫錯,跟persistence.xml文檔裏定義要一樣.-->
<bean id="entityManagerFactory" class="org.springframework.orm.jpa.LocalEntityManagerFactoryBean">
<property name="persistenceUnitName" value="defaultPersistenceUnit"/>
<property name="persistenceXmlLocation" value="classpath:persistence.xml">
</bean>
<!--第三步-->
<!--定義事務管理器-->
<bean id="transactionManager" class="org.springframework.orm.jpa.JpaTransactionManager">
<property name="entityManagerFactory" ref="entityManagerFactory"/>
</bean>
<!--第四步-->
<!--定義Repository接口的存放目錄-->
<!--定義接口實現的後綴名,一般爲Impl-->
<!--定義實體工廠的引用-->
<!--定義實體管理器的引用-->
<jpa:repositories base-package="cn.edu.sdut.softlab.repository"
repository-impl-postfix="Impl"
transaction-manager-ref="entityManagerFactory"
entity-manager-factory-ref="transactionManagerFactory"/>
<!--第五步-->
<!--聲明採用註解的方式申明事務-->
<tx:annotation-driven transaction-manager="transactionManager"/>
總結
如果在學Spring-Data-Jpa之前就學過jpa和Spring的人來說,理解起來挺容易的.暫時不懂也不要緊,多琢磨,凡事要循序漸進,希望以上的能對你有所幫助.