1、配置文件

pom.xml


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

2、application.yml

spring:
datasource:
url: jdbc:mysql://localhost:3306/jpa?useUnicode=true&characterEncoding=utf-8&useSSL=false&serverTimezone = GMT
username: root
password: 123456
driver-class-name: com.mysql.cj.jdbc.Driver
jpa:
hibernate:
# 更新或者创建数据表
ddl-auto: update
# 展示sql
show-sql: true main:
allow-bean-definition-overriding: true

3、新建pojo

使用JPAz注解配置映射关系

package com.spoot.springboot.pojo;

import com.fasterxml.jackson.annotation.JsonIgnoreProperties;

import javax.persistence.*;

//使用JPAz注解配置映射关系
//@Entity告诉JPA这是一个实体类和数据表映射的类 @Table指定和哪个表对应;如果省略表明就是user
@Entity
@Table(name = "tb_user")
@JsonIgnoreProperties(value = { "hibernateLazyInitializer", "handler" })
public class User {
//这是一个主键.同时标注这是一个自增主键
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Integer id;
@Column(name = "last_name",length = 255)
private String lastName;
@Column
private String email; public Integer getId() {
return id;
} public void setId(Integer id) {
this.id = id;
} public String getLastName() {
return lastName;
} public void setLastName(String lastName) {
this.lastName = lastName;
} public String getEmail() {
return email;
} public void setEmail(String email) {
this.email = email;
}
}

@JsonIgnoreProperties(value = { "hibernateLazyInitializer", "handler" })

fasterxml.jackson将对象转换为json

4、编写repository接口

package com.spoot.springboot.repository;

import com.spoot.springboot.pojo.User;
import org.springframework.data.jpa.repository.JpaRepository; //继承JpaRepository完成数据的操作 JpaRepository<User,Integer> 泛型操作的类和主键
public interface UserRepository extends JpaRepository<User,Integer> { }

继承JpaRepository完成数据的操作 JpaRepository<User,Integer> 泛型操作的类和主键

5、controller

package com.spoot.springboot.controller;

import com.spoot.springboot.pojo.User;
import com.spoot.springboot.repository.UserRepository;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController; import java.util.Optional; @RestController
public class UserController { @Autowired
UserRepository userRepository; @RequestMapping("/user/{id}")
public User getUset(@PathVariable("id") Integer id){
User user = userRepository.getOne(id);
return user;
} @GetMapping("/user")
public User getUset(User user){
User save = userRepository.save(user);
return save;
}
}

在yml中配置 ddl-auto: update会自动更新和创建表

测试:

OK!

6_5.springboot2.x数据整合springData JPA的更多相关文章

  1. 6_4.springboot2.x数据整合springData介绍

    介绍 Spring Data 项目的目的是为了简化构建基于Spring 框架应用的数据访问技术,包括非关系数据库.Map-Reduce 框架.云数据服务等等:另外也包含对关系数据库的访问支持. spr ...

  2. 【串线篇】spring boot整合SpringData JPA

    一.SpringData简介 其中SpringData JPA底层基于hibernate 二.整合SpringData JPA JPA: Java Persistence API的简称,中文名Java ...

  3. SpringBoot整合SpringData JPA入门到入坟

    首先创建一个SpringBoot项目,目录结构如下: 在pom.xml中添加jpa依赖,其它所需依赖自行添加 <dependency> <groupId>org.springf ...

  4. 第11章—使用对象关系映射持久化数据—SpringBoot+SpringData+Jpa进行查询修改数据库

    SpringBoot+SpringData+Jpa进行查询修改数据库 JPA由EJB 3.0软件专家组开发,作为JSR-220实现的一部分.但它又不限于EJB 3.0,你可以在Web应用.甚至桌面应用 ...

  5. 整合SpringData JPA

    ORM(Object Relational Mapping): 1).编写一个实体类(bean)和数据表进行映射,并且配置好映射关系: //使用JPA注解配置映射关系 @Entity //告诉JPA这 ...

  6. 6_3.springboot2.x数据整合Mybatis(注解和非注解)

    1.配置文件 pom.xml 导入mybatis提供的启动器 <dependency> <groupId>org.mybatis.spring.boot</groupId ...

  7. 6.4 SpringData JPA的使用

    引言:该文档是参考尚硅谷的关于springboot教学视屏后整理而来.当然后面还加入了一些自己从网上收集整理而来的案例! 一.SpringData JPA初步使用 1. springdata简介 2. ...

  8. 尚硅谷springboot学习34-整合SpringData JPA

    SpringData简介

  9. SpringBoot图文教程12—SpringData Jpa的基本使用

    有天上飞的概念,就要有落地的实现 概念十遍不如代码一遍,朋友,希望你把文中所有的代码案例都敲一遍 先赞后看,养成习惯 SpringBoot 图文教程系列文章目录 SpringBoot图文教程1「概念+ ...

随机推荐

  1. Dom编程优化

    对Dom的访问代价是昂贵,在富网页应用中通常是性能的瓶颈,所以对Dom的优化十分重要. 一.访问和修改Dom元素 浏览器通常要求JavaScript和Dom实现保持独立的.例如,在Internet E ...

  2. Q: 微信小程序登录

    这里使用的mpvue 第一步组件DOM部分 /pages/index <button class="app_btn" open-type="getUserInfo& ...

  3. leetcode-168周赛-1295-统计位数为偶数的数字

    题目描述: 方法一:O(N) class Solution: def findNumbers(self, nums: List[int]) -> int: ans=0 for num in nu ...

  4. Batch - FOR /F Delims 和 Tokens 用法

    原文地址: for /f命令之—Delims和Tokens用法&总结 作者:别逗了好么 在For命令语踞饽参数F中,最难理解的就是Delims和Tokens两个选项,本文简单的做一个比较和总拮 ...

  5. php上传(二)

    上传的主体页面 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www ...

  6. Vue的data选项使用注意

    使用组件时,大多数可以传入到Vue构造器中的选项可以在Vue extend()或 Vue.component() 中注册组件时使用,但是有一个重要的前提:data必须是函数 .在 var vm = n ...

  7. NX二次开发-UFUN获取工程图视图边界线是否显示UF_DRAW_ask_border_display

    #include <uf.h> #include <uf_draw.h> #include <uf_ui.h> UF_initialize(); logical b ...

  8. Harbor任意管理员注册漏洞复现CVE-2019-16097

    注册时抓包 添加poc "has_admin_role":true 管理员权限 POC POST /api/users HTTP/1.1 Host: 127.0.0.1 Conte ...

  9. Python生成Windows可执行exe文件

    环境 python3.6.5 pyinstaller3.5 windows 10 下载地址 python:https://www.python.org/ftp/python/3.6.5/python- ...

  10. PAT L2-019. 悄悄关注 /// map set

    https://www.patest.cn/contests/gplt/L2-019 题目大意: 新浪微博上有个“悄悄关注”,一个用户悄悄关注的人,不出现在这个用户的关注列表上,但系统会推送其悄悄关注 ...