1、在pom.xml中添加mysql 和 jpa 依赖

<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-data-jpa</artifactId>
</dependency><dependency><groupId>mysql</groupId><artifactId>mysql-connector-java</artifactId><scope>runtime</scope>
</dependency>

2、在application.properties中配置数据库连接信息

#mysql
spring.datasource.driver-class-name=com.mysql.jdbc.Driver
spring.datasource.url=jdbc:mysql://127.0.0.1:3306/boot_v2?useUnicode=true&characterEncoding=utf8&characterSetResults=utf8
spring.datasource.username=root
spring.datasource.password=root#jpa
#第一次建表设置为create 后面改为update,不然每次重启工程会删除表并新建
spring.jpa.hibernate.ddl-auto=update
spring.jpa.show-sql: true

3、编写实体类:UserEntity

package com.ldy.bootv2.demo.entity;import java.io.Serializable;import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;
import javax.persistence.Table;import com.fasterxml.jackson.annotation.JsonIgnoreProperties;import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;@Entity
@ApiModel
@Table(name="user")
@JsonIgnoreProperties(value={"hibernateLazyInitializer","handler"})
public class UserEntity implements Serializable {private static final long serialVersionUID = 1L;@Id@GeneratedValue@ApiModelProperty(value="id,新建时不传,修改时传")private Integer id;@Column@ApiModelProperty(value="名称")private String name;@Column@ApiModelProperty(value="年龄")private Integer age;public Integer getId() {return id;}public void setId(Integer id) {this.id = id;}public String getName() {return name;}public void setName(String name) {this.name = name;}public Integer getAge() {return age;}public void setAge(Integer age) {this.age = age;}}

4、编写dao:UserDao

package com.ldy.bootv2.demo.dao;import org.springframework.data.jpa.repository.JpaRepository;import com.ldy.bootv2.demo.entity.UserEntity;public interface UserDao extends JpaRepository<UserEntity,Integer> {}

5、编写Controller:UserController

package com.ldy.bootv2.demo.controller;import java.util.List;import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.DeleteMapping;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.ModelAttribute;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.PutMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;import com.ldy.bootv2.demo.dao.UserDao;
import com.ldy.bootv2.demo.entity.UserEntity;import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;@Api(tags = "用户信息管理接口-API")
@RestController
@RequestMapping("/user")
public class UserController {private static Logger logger = LoggerFactory.getLogger(UserController.class);@AutowiredUserDao userDao;@GetMapping("/findAll")@ApiOperation("查询全部用户")public List<UserEntity> findAll() {logger.info("您调用了findAll接口");return userDao.findAll();}@GetMapping("/getOne/{id}")@ApiOperation("根据ID查询用户")public UserEntity getOne(@ApiParam(value="用户id",required=true) @PathVariable("id") Integer id) {logger.info("您调用了getOne接口");return userDao.getOne(id);}@PutMapping("/saveOrUpdate")@ApiOperation("新增或者修改用户")public String saveOrUpdate(@ModelAttribute UserEntity entity) {logger.info("您调用了saveOrUpdate接口");try {userDao.save(entity);} catch (Exception e) {logger.error("失败,原因:" + e.getMessage());return "error";}return "success";}@DeleteMapping("/delete/{id}")@ApiOperation("根据ID删除用户")public String deleteById(@ApiParam(value="用户id",required=true) @PathVariable("id") Integer id) {logger.info("您调用了delete接口");try {userDao.deleteById(id);} catch (Exception e) {logger.error("失败,原因:" + e.getMessage());return "error";}return "success";}}

6、运行项目,打开swagger页面,测试接口正常,swagger的集成请查看:https://blog.csdn.net/LDY1016/article/details/83415640

源码下载地址:https://pan.baidu.com/s/1Z771VDiuabDBJJV445xLeA#list/path=%2Fspring%20boot%202.x%20%E4%BB%A3%E7%A0%81

spring boot 整合 jpa相关推荐

  1. spring boot 系列之四:spring boot 整合JPA

    上一篇我们讲了spring boot 整合JdbcTemplate来进行数据的持久化, 这篇我们来说下怎么通过spring boot 整合JPA来实现数据的持久化. 一.代码实现 修改pom,引入依赖 ...

  2. Spring Boot基础学习笔记07:Spring Boot整合JPA

    文章目录 零.学习目标 1.熟悉Spring Data JPA基本语法和使用 2.掌握Spring Boot与JPA的整合使用 一.Spring Data JPA概述 1.Spring Data JP ...

  3. Spring Boot整合Jpa多数据源

    Spring Boot整合Jpa多数据源 本文是Spring Boot整合数据持久化方案的最后一篇,主要和大伙来聊聊Spring Boot整合Jpa多数据源问题.在Spring Boot整合JbdcT ...

  4. Spring boot整合jpa Jquery实现三级联动

    Spring boot 整合jpa JQuery 实现省,市,区, 三级联动效果 三级联动在很多项目都必不可少,尤其是在付款时,需要选取地址,为了更好的用户体验感,从而出现了三级联动. 实现三级联动的 ...

  5. Spring Boot整合JPA和人大金仓(Kingbase8)数据库

    Spring Boot整合JPA和人大金仓(Kingbase8)数据库 简介 在开发Java应用程序时,使用JPA(Java Persistence API)可以方便地进行数据库操作.而人大金仓(Ki ...

  6. Spring boot 整合Jpa 配置文件参数

    #数据库驱动 spring.datasource.driverClassName = com.mysql.jdbc.Driver #数据库连接地址 spring.datasource.url = jd ...

  7. spring boot整合JPA实现多条件查询并分页

    1.在DAO中的实现代码: public Page<User> findAdminUserPage(PageRequest pr, String name) {String sql = & ...

  8. springboot整合hibernate_峰哥说技术系列-17 .Spring Boot 整合 Spring Data JPA

    今日份主题 Spring Boot 整合 Spring Data JPA JPA(Java Persistence API)是用于对象持久化的 API,是Java EE 5.0 平台标准的 ORM 规 ...

  9. Spring Boot 整合 Spring Data JPA

    JPA 是一个基于 O/R 映射的 Java 持久化规范,其定义了一系列对象持久化的标准,目前实现这一规范的产品有 Hibernate.EclipseLink.OpenJPA.TopLink 等,这也 ...

最新文章

  1. Scrapy框架CrawlSpider类爬虫实例
  2. ngrok配置信息_ngrok内网穿透服务器搭建及配置(附 frp 配置)
  3. petshop4.0 详解之四(PetShop之ASP.NET缓存)
  4. 带你了解超大规模数据中心究竟有何不同?
  5. python之迭代锁与信号量
  6. 【Android 属性动画】属性动画 Property Animation 简介 ( 属性动画简介 | 属性动画特性 )
  7. 安装中文版man手册,同时保留原英文版手册
  8. tcpdump命令---Linux学习笔记
  9. Mybatis调用oracle 存储过程
  10. tensorflow contrib模块_OpenCV DNN 模块-风格迁移
  11. Design Patterns(二十四):Visite Pattern--VB代码
  12. geatpy - 遗传和进化算法相关算子的库函数(python)
  13. 【千律】C++基础:使用动态数组vector初始化自定义类
  14. uniapp使用阿里百川SDK唤醒淘宝APP 打开淘宝领券页面/渠道备案,uniapp对接淘宝联盟等等超级详细
  15. 天线工程手册_弱电工程人员书籍推荐
  16. GB与BIG5内码转换COM原代码
  17. 如何做好一个软件测试管理者,高效带好团队呢?
  18. 安装CAD缺少html,Win10系统安装CAD2007失败缺少.NET组件如何解决
  19. 使用天平只用3次求出12个球中的次品球并确认轻重
  20. python 爬取链家成交房数据案例

热门文章

  1. 品优购项目笔记(十四):微信支付
  2. AndroidKiller报.smali文件丢失问题解决(关闭Android Studio的Instant Run)
  3. 读书笔记(II) 编译原理及实践
  4. MyBatis中设置事务自动提交
  5. Golang实现文件搜索器
  6. Matlab 4. Matlab2016 不能保存数据(变量)的解决方法(中文版)-v7.3 switch
  7. 图片pdf合并软件:合并的方法介绍
  8. linux进化树分析的软件,进化树分析及相关软件使用说明
  9. 物联网小课堂之模组SIM卡相关秘籍
  10. 模块度(Modularity)与Fast Newman算法讲解与代码实现