乐趣区

Spring-Boot-2x三整合Spring-Data-JPA

为什么是 JPA

JPA 虽然小众,但是足够优雅╮(╯_╰)╭,由于微服务的兴起,服务粒度的细化,多表联合的场景逐渐减少,更多的是一些简单的单表查询,而这正是 JPA 的强项所在。所以,以后的实战项目中我也会用 JPA 来操作数据库,当然 Mybatis 也会在后面的教程中来集成,毕竟主流┑(~Д ~)┍。

不多扯淡,下面进入主题。

第一步:添加依赖

首先,我们要做的是新建一个项目,如果有不会的同学可以去看第一篇 [HelloWorld
](https://blog.csdn.net/vi_youn…,然后,我们在pom.xml 中添加以下依赖:

这里我们添加的就是被红框圈住的两个依赖,然后还有一个简化开发的 lombok 依赖,如果在 idea 环境下,需要去下载一个 lombok 插件,打开设置面板之后,按照下图进行操作后重启 idea 即可。

第二步:配置文件

找到你的 application.properties 文件,进行配置:

一些参数的意义,我在注释中已经写得很明确了,这里就不再多说。

第三步:添加实体类

这是我们的一个简单的用户实体类,@Entity注解用于生成数据库表,@Table用于指定表的名称,@SequenceGenerator是生产主键的索引表(seq_user)的规则,@GeneratedValue用于
根据规则生成主键,@Id表示这是一个主键。

第四步:编写简单的测试程序

Repository:

对,你没看错,这就是我的操作数据库的接口,可是为什么啥都没有呢????,莫慌,我们来看一下继承的这个接口都给我们提供了哪些方法:

可以看到,提供了大部分我们会用到的方法,那么如果这些方法中没有我们想要的,我们需要自己编写该怎么办呢?下面的这个表中的语法基本上都可以帮助我们去做到:

如果这样还没法满足我们的需求,我们还可以自己去编写类似于 HQL 的语句去查询:

有关 HQL 的语法,我们会在后面开单章单独讲解 ψ(`∇´)ψ。

Service:

接口类不再贴出,占用篇幅。。

Controller:

运行程序后,可以看到已经给我们创建了用户表以及用户索引表。

访问地址,可以看到:

一切正如我们所料 (づ。◕‿‿◕。) づ

第五步:添加分页功能

有细心的同学可能注意到了,我继承的这个接口可以实现自定义排序以及分页的功能,那么我们该怎么去使用呢?

一行代码解决分页~(在实战中我们可能不会这样去用,这里只是做为一个功能的展示证明 JPA 有多么的强大)

原创文章,文笔有限,才疏学浅,文中若有不正之处,万望告知。

源码可以去 github 或者码云上进行下载,后续的例子都会同步更新。


云撸猫


公众号

退出移动版