前言

只有光头才能变强。

不知道大家对SpringBoot和Spring Data JPA了解多少,如果你已经学过Spring和Hibernate的话,那么SpringBoot和SpringData JPA可以分分钟上手的。SpringBoot和SpringData JPA的好处我就不说了

其实我在学完SpringBoot和SpringData JPA了之后,写过一个小Demo,但一直没发出来而已(懒)。最近要写毕业设计的一个管理模块(CRUD),并且我又没写过相关SpringBoot和SpringData JPA的搭建教程,所以就诞生了这篇文章了。

一、从零搭建环境

本次我使用的是 IDEA编辑器来搭建SpringBoot和Spring Data JPA环境

首先,我们在IDEA新建项目的时候,选择Spring Initializr,然后next就行了。




idea spring boot 插件只能在ultimate中使用 idea安装springboot插件_java

选择Spring Initializr



然后填写一些项目的资料(其实这些资料也无关紧要,自己看着填就好了),随后点击next




idea spring boot 插件只能在ultimate中使用 idea安装springboot插件_JPA_02

填写一些项目的资料



随后在勾选的时候,我就随手勾选了个LomBok(其他的没勾选,反正后面我们可以在pom文件下配置嘛)。可以看出,本次SpringBoot的版本为2.1.3

  • :如果不太了解LomBok的同学,建议去搜一下。这是一个非常好用的插件,有了它我们可以不用写繁琐的set/get方法。记得:使用lomBok还需要在IDEA下安装插件



idea spring boot 插件只能在ultimate中使用 idea安装springboot插件_Data_03

勾选了个LomBok



然后IDEA就会帮我们创建出Maven管理下SpringBoot的项目啦,此时一般我们会指定自己的下载好的Maven,重写它的settings.xml文件




idea spring boot 插件只能在ultimate中使用 idea安装springboot插件_java_04

配置maven



然后Maven就一直在下载相关的依赖啊,必要的插件啊(我等了差不多10分钟吧,这个时间可以去倒杯Java喝喝.haha),等Maven下载完之后,我们的项目就成了下面那个样子了(:原生的是application.properties文件的,我改了一下后缀,我比较喜欢yml格式的):




idea spring boot 插件只能在ultimate中使用 idea安装springboot插件_JPA_05

已经是一个SpringBoot项目了



二、完善pom文件

现在pom文件只有SpringBoot和LomBok的依赖,想要完成CURD的功能,我们需要用到Spring Web模块、Spring Data JPA以及MySQL驱动依赖,所以我们得在pom文件下加入这些依赖:

org.springframework.boot
spring-boot-starter-web
org.springframework.boot
spring-boot-starter-data-jpa
mysql
mysql-connector-java

pom文件的完整依赖图如下:




idea spring boot 插件只能在ultimate中使用 idea安装springboot插件_Data_06

pom文件的完整依赖图



三、配置yml文件

既然我们用到了SpringData JPA和MySQL,我们得为其进行配置最基础的信息。比如说数据库的用户名和密码,相对应的库,以及SpringData JAP的策略。

#服务端容器的配置
server:
 port: 8887
#数据库配置
spring:
 datasource:
 username: 填写自己的
 password: 填写自己的
 driver-class-name: com.mysql.cj.jdbc.Driver
 url: jdbc:mysql://填写自己的机器:3306/填写自己的库?useUnicode=true&characterEncoding=utf-8&serverTimezone=UTC
 # JPA配置
 jpa:
 hibernate:
 ddl-auto: update
 show-sql: true
 # formatSQL得这样写
 properties:
 hibernate:
 format_sql: true

yml文件完整图如下:




idea spring boot 插件只能在ultimate中使用 idea安装springboot插件_idea加入springboot插件_07

yml文件完整图



数据库的信息填写成自己的就行了。

四、写一个User实体

我毕业设计其中就有对用户的管理,我们用户实体设计如下(大家的当然可以跟我的不一样了,我这只是样例):

package com.zhongfucheng.example.demo.domain;
import lombok.Data;
import org.hibernate.annotations.GenericGenerator;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;
import javax.persistence.Table;
import java.io.Serializable;
import java.util.Date;
/**
 * 存储用户的信息
 *
 * @author ozc
 * @version 1.0
 */
@Entity // jpa的注解,需要加
@Table(name = "table_user") // 指定数据库的表名
@Data // lombok 
public class User implements Serializable {
 @Id
 @GeneratedValue(generator = "system-uuid")
 @GenericGenerator(name = "system-uuid