spring boot 整合 jpa
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相关推荐
- spring boot 系列之四:spring boot 整合JPA
上一篇我们讲了spring boot 整合JdbcTemplate来进行数据的持久化, 这篇我们来说下怎么通过spring boot 整合JPA来实现数据的持久化. 一.代码实现 修改pom,引入依赖 ...
- Spring Boot基础学习笔记07:Spring Boot整合JPA
文章目录 零.学习目标 1.熟悉Spring Data JPA基本语法和使用 2.掌握Spring Boot与JPA的整合使用 一.Spring Data JPA概述 1.Spring Data JP ...
- Spring Boot整合Jpa多数据源
Spring Boot整合Jpa多数据源 本文是Spring Boot整合数据持久化方案的最后一篇,主要和大伙来聊聊Spring Boot整合Jpa多数据源问题.在Spring Boot整合JbdcT ...
- Spring boot整合jpa Jquery实现三级联动
Spring boot 整合jpa JQuery 实现省,市,区, 三级联动效果 三级联动在很多项目都必不可少,尤其是在付款时,需要选取地址,为了更好的用户体验感,从而出现了三级联动. 实现三级联动的 ...
- Spring Boot整合JPA和人大金仓(Kingbase8)数据库
Spring Boot整合JPA和人大金仓(Kingbase8)数据库 简介 在开发Java应用程序时,使用JPA(Java Persistence API)可以方便地进行数据库操作.而人大金仓(Ki ...
- Spring boot 整合Jpa 配置文件参数
#数据库驱动 spring.datasource.driverClassName = com.mysql.jdbc.Driver #数据库连接地址 spring.datasource.url = jd ...
- spring boot整合JPA实现多条件查询并分页
1.在DAO中的实现代码: public Page<User> findAdminUserPage(PageRequest pr, String name) {String sql = & ...
- springboot整合hibernate_峰哥说技术系列-17 .Spring Boot 整合 Spring Data JPA
今日份主题 Spring Boot 整合 Spring Data JPA JPA(Java Persistence API)是用于对象持久化的 API,是Java EE 5.0 平台标准的 ORM 规 ...
- Spring Boot 整合 Spring Data JPA
JPA 是一个基于 O/R 映射的 Java 持久化规范,其定义了一系列对象持久化的标准,目前实现这一规范的产品有 Hibernate.EclipseLink.OpenJPA.TopLink 等,这也 ...
最新文章
- Scrapy框架CrawlSpider类爬虫实例
- ngrok配置信息_ngrok内网穿透服务器搭建及配置(附 frp 配置)
- petshop4.0 详解之四(PetShop之ASP.NET缓存)
- 带你了解超大规模数据中心究竟有何不同?
- python之迭代锁与信号量
- 【Android 属性动画】属性动画 Property Animation 简介 ( 属性动画简介 | 属性动画特性 )
- 安装中文版man手册,同时保留原英文版手册
- tcpdump命令---Linux学习笔记
- Mybatis调用oracle 存储过程
- tensorflow contrib模块_OpenCV DNN 模块-风格迁移
- Design Patterns(二十四):Visite Pattern--VB代码
- geatpy - 遗传和进化算法相关算子的库函数(python)
- 【千律】C++基础:使用动态数组vector初始化自定义类
- uniapp使用阿里百川SDK唤醒淘宝APP 打开淘宝领券页面/渠道备案,uniapp对接淘宝联盟等等超级详细
- 天线工程手册_弱电工程人员书籍推荐
- GB与BIG5内码转换COM原代码
- 如何做好一个软件测试管理者,高效带好团队呢?
- 安装CAD缺少html,Win10系统安装CAD2007失败缺少.NET组件如何解决
- 使用天平只用3次求出12个球中的次品球并确认轻重
- python 爬取链家成交房数据案例
热门文章
- 品优购项目笔记(十四):微信支付
- AndroidKiller报.smali文件丢失问题解决(关闭Android Studio的Instant Run)
- 读书笔记(II) 编译原理及实践
- MyBatis中设置事务自动提交
- Golang实现文件搜索器
- Matlab 4. Matlab2016 不能保存数据(变量)的解决方法(中文版)-v7.3 switch
- 图片pdf合并软件:合并的方法介绍
- linux进化树分析的软件,进化树分析及相关软件使用说明
- 物联网小课堂之模组SIM卡相关秘籍
- 模块度(Modularity)与Fast Newman算法讲解与代码实现