Spring Cloud项目扩展(六)集成SpringData jpa

​springdata jpa使用起来比较简单,本篇将在项目集成。目的是为后面介绍elasticsearch的使用打下基础。下面直接开始。

1,以我们的example-service项目为例,首先引入jar包,lombok是非必须的。我们这里使用的mysql数据库。

2,增加mysql和jpa配置。hibernate.hbm2ddl.auto 参数的作用主要用于:自动创建、更新、验证数据库表结构,有四个值。

3,创建一个新的moudle,拥有存放一些公共的实体类。

4,新创建的entity模块中引入jar包。

5,在service模块中引入entity模块。在service的pom中加入如下代码。

6,在entity中增加实体类。

7,在service项目中创建dao包,并在包中创建一个接口集成JpaRepository

8,测试查看结果。

总结:jpa的集成很简单。其实JPA在这里遵循 Convention over configuration(约定大约配置)的原则,遵循 Spring 以及 JPQL 定义的方法命名。Spring提供了一套可以通过命名规则进行查询构建的机制。这套机制会把方法名首先过滤一些关键字,比如 find…By,read…By,query…By,count…By 和 get…By。系统会根据关键字将命名解析成 2 个子语句,第一个 By 是区分这两个子语句的关键词。这个 By 之前的子语句是查询子语句(指明返回要查询的对象),后面的部分是条件子语句。如果直接就是 findBy… 返回的就是定义 Respository 时指定的领域对象集合,同时 JPQL 中也定义了丰富的关键字:and、or、Between 等等。

9,自定义语句。使用Query注解并且在注解中使用nativeQuery=true,可以使用原生语句进行查询。

也可以去掉nativeQuery=true,使用费原生sql进行查询。

10,关联查询。

10.1,entity项目中增加Hero实体类。

10.2,创建一个存放联合查询结果的实体类。记得一定要带上构造方法。

10.3,MyBallRepository中增加如下查询方法。

 

10.4,查看运行结果。

本篇简单介绍了jpa的使用。集成和简单使用都很简单。关键是要对JPQL熟悉,才能熟练运用。

关注公众号:直立行走的程序猿

公众号回复springcloud获得git的源码下载地址。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值