导入依赖

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.</modelVersion>
<parent>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-parent</artifactId>
<version>2.2..RELEASE</version>
<relativePath/> <!-- lookup parent from repository -->
</parent>
<groupId>com.cmy</groupId>
<artifactId>spring-data-jpa</artifactId>
<version>0.0.-SNAPSHOT</version>
<name>spring-data-jpa</name>
<description>Demo project for Spring Boot</description>
<properties>
<java.version>1.8</java.version>
</properties>
<dependencies>
<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>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-thymeleaf</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-webflux</artifactId>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.</version>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>io.projectreactor</groupId>
<artifactId>reactor-test</artifactId>
<scope>test</scope>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
</plugin>
</plugins>
</build>
</project>

DataJpaApplication类

package com.cmy;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication; @SpringBootApplication
public class DataJpaApplication {
public static void main(String[] args) {
SpringApplication.run(DataJpaApplication.class, args);
}
}

StudentDao类

package com.cmy.dao;

import com.cmy.entity.Student;
import org.springframework.data.jpa.repository.JpaRepository;
import org.springframework.data.jpa.repository.Query;
import java.util.List; public interface StudentDao extends JpaRepository<Student,Integer>{
@Query(value="select * from studentinfo where stu_name=?1",nativeQuery = true)
Student findByStuname(String stuname);
List<Student> findByStunameLike(String stuname); }

Student类

import javax.persistence.*;

@Entity
@Table(name = "studentinfo")
public class Student {
@Id
@GeneratedValue
private Integer id;
private String name;
private Integer age;
private Integer sex;
@Column(name = "stu_name") 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;
} public Integer getSex() {
return sex;
} public void setSex(Integer sex) {
this.sex = sex;
} public Student(Integer id, String name, Integer age, Integer sex) {
this.id = id;
this.name = name;
this.age = age;
this.sex = sex;
}
}

StudentController类

import com.cmy.dao.StudentDao;
import com.cmy.entity.Student;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.data.domain.PageRequest;
import org.springframework.data.domain.Sort;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.ResponseBody;
import org.springframework.web.bind.annotation.RestController; import java.util.Arrays;
import java.util.List; @Controller //@Controller+@ResponseBody
public class StudentController { @Autowired
StudentDao dao; @RequestMapping("/saveAllStudent")
public String saveAllStudent(){
//Hibernate:瞬时状态 游离状态 持久状态
List<Student> students = Arrays.asList(new Student("利亚东哥", , ),
new Student("李先玉", , ),
new Student("雄哥", , ));
dao.saveAll(students);
//save(T t):向数据库中增加单条记录
//saveAll(Iterable i):增加多条记录
//saveAndFlush():增加并刷新缓存
return "success";
} @RequestMapping("/deleteYeShou")
public String deleteYeShou(){
//dao.deleteById(4); 通过ID删除单条记录
Student yeshou1=new Student();
yeshou1.setId();
Student yeshou2=new Student();
yeshou2.setId();
dao.deleteAll(Arrays.asList(yeshou1,yeshou2)); //批量删除
return "success";
} @RequestMapping("/modifyBeantifulGirl")
public String modifyStudent(){
Student one = dao.getOne(); //检索单条记录的方法
one.setAge();
one.setStuname("玉姐");
dao.save(one); //修改数据的作用
return "success";
} @RequestMapping("/getAll")
@ResponseBody
public Object getAll(){
return dao.findAll();
} @RequestMapping("/getByName")
@ResponseBody
public Object getByName(){
return dao.findByStuname("玉姐");
} @RequestMapping("/getLike")
@ResponseBody
public Object getByName(String name){
return dao.findByStunameLike("%"+name+"%");
} @RequestMapping("/getPage")
@ResponseBody
public Object getPage(@RequestParam(required = false,defaultValue = "")Integer pageindex){
PageRequest pageRequest=new PageRequest(pageindex-,, Sort.Direction.DESC,"id"); return dao.findAll(pageRequest);
} }

success.html

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
<script type="text/javascript"></script>
</head>
<body>
加入成功 美女与野兽
</body>
</html>

application.properties

#配置数据库的四个连接参数
spring.datasource.driver-class-name=com.mysql.jdbc.Driver
spring.datasource.url=jdbc:mysql://localhost:8080/account
spring.datasource.username=root
spring.datasource.password= #Spring Data JPA的配置
spring.jpa.hibernate.ddl-auto=update
spring.jpa.show-sql=true
spring.jackson.serialization.indent-output=true
spring.jpa.database=mysql

DataJpaApplicationTests

import org.junit.Test;
import org.junit.runner.RunWith;
import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.test.context.junit4.SpringRunner; @RunWith(SpringRunner.class)
@SpringBootTest
public class DataJpaApplicationTests {
@Test
public void contextLoads() {
}
}

Springboot-data-jpa增删改查的更多相关文章

  1. spring boot(十五)spring boot+thymeleaf+jpa增删改查示例

    快速上手 配置文件 pom包配置 pom包里面添加jpa和thymeleaf的相关包引用 <dependency> <groupId>org.springframework.b ...

  2. 从0开始完成SpringBoot+Mybatis实现增删改查

    1.准备知识: 1)需要掌握的知识: Java基础,JavaWeb开发基础,Spring基础(没有Spring的基础也可以,接触过Spring最好),ajax,Jquery,Mybatis. 2)项目 ...

  3. springboot整合mybatis增删改查(四):完善增删改查及整合swgger2

    接下来就是完成增删改查的功能了,首先在config包下配置Druid数据连接池,在配置之前先把相关配置在application.preperties中完善 application.preperties ...

  4. Spring Data CrudRepository增删改查方法(八)

    CrudRepository   的主要方法 long count(); boolean exists(Integer arg0); <S extends StudentPO> S sav ...

  5. 三、JPA增删改查常用方法

    前言:创建EntityManager对象,需要先创建创建EntityManagerFactory对象 方式一:直接通过persistenceUnitName创建 String persistenceU ...

  6. SpringBoot 数据库操作 增删改查

    1.pom添加依赖 <!--数据库相关配置--> <dependency> <groupId>org.springframework.boot</groupI ...

  7. 从零开始搭建springboot+mybatis+thymeleaf增删改查示例

    环境说明: 开发工具:Eclipse Mars.2 Release(4.5.2) JDK:1.8 Maven:3.3.3 注:Eclipse需安装sts插件,安装方法请自行百度 1. 新建maven工 ...

  8. springboot整合mybatis增删改查(二):springboot热部署

    SpringBoot整合热部署 传统情况下, 我们用idea运行springboot程序时, 如果我们需要修改类里的方法,或者其他信息 我们需要修改完保存,并且重启springboot,有时候会很浪费 ...

  9. java:Oracle(table的增删改查,data的增删改查)

    1.oracle命名规范:和Java的命名规范很像 1.严格区分大小写 2.所有的sql语句都要以';'结尾 3.所有的sql 都要使用空格区分:sqlplus空格/空格as空格sysdba回车 4. ...

  10. 小书MybatisPlus第1篇-整合SpringBoot快速开始增删改查

    Mybatis Plus官方文档已经很完善了,为什么还要写一个这样的文档? 官方文档注重知识结构的整理,没有注重学习者的学习顺序 官方文档中的案例注重API描述,比较适合学会mybatis plus之 ...

随机推荐

  1. 转载:c++获取本机IP地址

    windows下获取IP地址的两种方法: 一种可以获取IPv4和IPv6,但是需要WSAStartup: 一种只能取到IPv4,但是不需要WSAStartup: 如下: 方法一:(可以获取IPv4和I ...

  2. Django 自定义表名

    class UserInfo(AbstractUser): phone = models.BigIntegerField(null=True, blank=True) create_time = mo ...

  3. python基础 — 异常处理

    什么是异常? 异常即是一个事件,该事件会在程序执行过程中发生,影响了程序的正常执行. 一般情况下,在Python无法正常处理程序时就会发生一个异常. 异常是Python对象,表示一个错误. 当Pyth ...

  4. day31——recv工作原理、高大上版解决粘包方式、基于UDP协议的socket通信

    day31 recv工作原理 源码解释: Receive up to buffersize bytes from the socket. 接收来自socket缓冲区的字节数据, For the opt ...

  5. mysql疑问

  6. resnet的理解-- 面试笔记

    上周参加了XX大学研究生推免的面试,面试老爷问到了resnet主要解决了什么问题,我下意识的回答到解决了当网络加深的时候会出现的vanishing/exploding gradients,然后面试老爷 ...

  7. 【POJ3613 Cow Relays】(广义矩阵乘法)

    题目链接 先离散化,假设有\(P\)个点 定义矩阵\(A_{ij}\)表示\(i\)到\(j\)只经过一条边的最短路,\[{(A^{a+b})_{ij}=\min_{1\le k\le p} \{ ( ...

  8. dpkg文件缺失问题

    sudo apt-get update 命中:1 http://security.ubuntu.com/ubuntu bionic-security InRelease         命中:2 ht ...

  9. HTTP2协议主要改进点

    1.改成二进制协议,每次传输二进制帧,帧有以下几个字段 类型type,长度length,flag,StringID流标志,Payload负载,最基础的两种类型HEAD类型和DATA类型 2.多路复用, ...

  10. sql server 获取某一字段分组数据的前十条记录

    1.sql 语法 select m, n from ( select row_number () over (partition by m order by n desc) rn,--以m分组,分组内 ...