一、简介

对于数据访问层,无论是SQL还是NOSQL,Spring Boot默认采用整合 Spring Data的方式进行统一处理,添加大量自动配置,屏蔽了很多设置。引入 各种xxxTemplate,xxxRepository来简化我们对数据访问层的操作。对我们来 说只需要进行简单的设置即可 

      – JDBC

      – MyBatis

      – JPA 

六、Spring Boot与数据访问

二、整合基本JDBC与数据源 

1、引入starter

      – spring-boot-starter-jdbc

2、配置application.yml

3、测试

4、高级配置:使用druid数据源

      – 引入druid

      – 配置属性

5、配置druid数据源监控 

三、整合MyBatis 

 1、引入mybatis-starter

      – mybatis-spring-boot-starter

2、注解模式

3、配置文件模式

4、测试

四、 Spring Data 

简介: Spring Data 项目的目的是为了简化构建基于 Spring 框架应用的数据访问技术,包括非关系数据库、 Map-Reduce 框架、云数据服务等等;另外也包含对关系数据库的访问支持。

• Spring Data 包含多个子项目:

      – Spring Data Commons

     – Spring Data JPA

     – Spring Data KeyValue

     – Spring Data LDAP

     – Spring Data MongoDB

     – Spring Data Gemfire

     – Spring Data REST

     – Spring Data Redis

     – Spring Data for Apache Cassandra

     – Spring Data for Apache Solr

     – Spring Data Couchbase (community module)

     – Spring Data Elasticsearch (community module)

     – Spring Data Neo4j (community module) 

六、Spring Boot与数据访问 

1、SpringData特点  

SpringData为我们提供使用统一的API来对数据访问层进行操作;这主要是Spring Data Commons项目来实现的。Spring Data Commons让我们在使用关系型或者非关系型数据访问 技术时都基于Spring提供的统一标准,标准包含了CRUD(创建、获取、更新、删除)、查询、 排序和分页的相关操作。 

2、统一的Repository接口  

Repository<T, ID extends Serializable>:统一接口  

RevisionRepository<T, ID extends Serializable, N extends Number & Comparable<N>>:基于乐观 锁机制  

CrudRepository<T, ID extends Serializable>:基本CRUD操作  

PagingAndSortingRepository<T, ID extends Serializable>:基本CRUD及分页 

六、Spring Boot与数据访问 

3、提供数据访问模板类 xxxTemplate;  

如:MongoTemplate、RedisTemplate等 

4、JPA与Spring Data 

1)、JpaRepository基本功能  

         编写接口继承JpaRepository既有crud及分页等基本功能  

2)、定义符合规范的方法命名  

         在接口中只需要声明符合规范的方法,即拥有对应的功能 

六、Spring Boot与数据访问 

3)、@Query自定义查询,定制查询SQL  

4)、Specifications查询(Spring Data JPA支持JPA2.0的Criteria查询) 

五、整合JPA 

1、引入spring-boot-starter-data-jpa

2、配置文件打印SQL语句

3、创建Entity标注JPA注解

4、创建Repository接口继承JpaRepository

5、测试方法 

相关文章: