Java框架spring Boot学习笔记(五):Spring Boot操作MySQL数据库增、删、改、查
在pom.xml添加一下代码,添加操作MySQL的依赖jar包。
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-data-jpa</artifactId>
</dependency> <dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
</dependency>
新建dbpeople的一个数据库,用户名root,密码123456

编写生成配置文件application-prod.yml
server:
port: 8082
context-path: /
修改application.yml文件
spring:
profiles:
active: prod
datasource:
driver-class-name: com.mysql.jdbc.Driver
url: jdbc:mysql://localhost:3306/dbpeople?useSSL=true
username: root password: 123456 jpa: hibernate: ddl-auto: create #update show-sql: true
添加一个people类People.java
package com.example.demo; import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.Id; //@Entity对应数据库中的一个表
@Entity
public class People { //@Id配合@GeneratedValue,表示id自增长
@Id
@GeneratedValue
private Integer id;
private String name;
private Integer age; //必须要有一个无参的构造函数,不然数据库会报错
public People() {
} 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;
}
}
添加一个注入类PeopleProperties.java
package com.example.demo; import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.stereotype.Component; //获取注入还需要加一个@Component注解,@ConfigurationProperties(prefix = "people")获取前缀是people的配置
@Component
@ConfigurationProperties(prefix = "people")
public class PeopleProperties { private String name;
private Integer age; public void setName(String name) {
this.name = name;
}
public void setAge(Integer age) {
this.age = age;
} public String getName() { return name; }
public Integer getAge() { return age; }
}
编写一个数据库操作自定义接口,定制操作接口,这里只演示定制查询接口
PeopleRepository.java
package com.example.demo;
import org.springframework.data.jpa.repository.JpaRepository;
import java.util.List;
public interface PeopleRepository extends JpaRepository<People,Integer> {
//通过年龄来查询
public List<People> findByAge(Integer age);
}
编写数据库操作类,可以进行增、删、改、查等操作。
package com.example.demo; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*; import java.util.List; @RestController
public class PeopleController {
@Autowired
private PeopleRepository peopleRepository; /**
* 查询数据库中所有列表
* @return
*/
@GetMapping(value = "/people")
public List<People> girlList(){
return peopleRepository.findAll();
} /**
* 增加一个人的数据
* @param name
* @param age
* @return
*/
@PostMapping(value = "/people")
public People peopleAdd(@RequestParam("name") String name,
@RequestParam("age") Integer age){
People people = new People();
people.setName(name);
people.setAge(age); return peopleRepository.save(people);
} /**
* 查询一个人
* @param id
* @return
*/
@GetMapping(value = "/people/{id}")
public People peopleFindOne(@PathVariable("id") Integer id){
return peopleRepository.findOne(id);
} /**
* 修改一个人的数据
* @param id
* @param name
* @param age
*/
@PutMapping(value = "/people/{id}")
public People peopleUpdate(@PathVariable("id") Integer id,
@RequestParam("name") String name,
@RequestParam("age") Integer age){
People people = new People();
people.setId(id);
people.setName(name);
people.setAge(age); return peopleRepository.save(people);
} /**
* 删除一个人的数据
* @param id
*/
@DeleteMapping(value = "/people/{id}")
public void peopleDelete(@PathVariable("id") Integer id){
peopleRepository.delete(id);
} /**
* 通过年龄查询列表
* @param age
* @return
*/
@GetMapping(value = "/people/age/{age}")
public List<People> peopleListByAge(@PathVariable("age") Integer age){
return peopleRepository.findByAge(age);
}
}
运行,使用postman工具发包给运行起来的服务器
增加三条数据



打开数据库可以看到增加了三条数据

通过id查询数据,看到返回id=2的数据

查询年龄age为22的数据列表

可以看到返回两条age=22的数据
修改数据

可以看到id=2的数据修改成了

删除id=2的数据

可以看到id=2的数据已经被删掉了。

Java框架spring Boot学习笔记(五):Spring Boot操作MySQL数据库增、删、改、查的更多相关文章
- Nodejs学习笔记(一)--- 操作Mysql数据库
对于一门语言的学习,我个人觉得最好的方式就是通过一个项目来展示,所以从基本的一些模块去了解是最好的方式对于Mysql怎么去链接数据库这个我是在网上找到的(其实一直想找官方文档的,发现没有它的踪迹,(后 ...
- C#学习笔记(3)——操作sqlserver数据库增删改查
说明(2017-5-25 16:29:35): 1. VS2010,视图->服务器资源管理器->数据连接->右键添加连接->服务器名(本机可以用点)->选择数据库-> ...
- C#学习笔记(2)——操作sqlite数据库增删改查
说明(2017-5-25 10:49:50): 1. app.config文件 Alt+Shift+C创建类,选择“应用程序配置文件”,添加<connectionStrings>,要先打个 ...
- ES6学习笔记<五> Module的操作——import、export、as
import export 这两个家伙对应的就是es6自己的 module功能. 我们之前写的Javascript一直都没有模块化的体系,无法将一个庞大的js工程拆分成一个个功能相对独立但相互依赖的小 ...
- spring cloud学习笔记五 网关服务zuul
网关服务是指,客户端发送的请求不用直接访问特定的微服务接口,而且是经过网关服务的接口进行交互,网关服务再去到特定的微服务中进行调用. 网关服务的路由功能和Nginx的反向代理一样,所有的服务都先会 ...
- spring揭密学习笔记(1) --spring的由来
1.spring起源于在EJB暴露出各种严重问题的情况应运而生. Spring是于2003年兴起的一个轻量级的Java开发框架, Spring倡导一切从实际出发,以实用的态度来选择适合当前开发场景的解 ...
- Java框架spring 学习笔记(十五):操作MySQL数据库
新建一个工程,添加对数据库的支持 下载mysql驱动包 mysql-connector-java-5.1.7-bin.jar,快捷键ctrl+alt+shift+s,添加jar包到工程 编写JdbcT ...
- Spring Boot 学习笔记 - 认识Spring Boot框架
因各种原因,.NET前端工程师重新接触JAVA,真是向全栈的路上又迈出了无奈的一步. 下面正文: Spring Boot是由Pivotal团队提供的全新框架,其设计目的是用来简化新Spring应用的初 ...
- Spring Boot学习笔记(五)整合mybatis
pom文件里添加依赖 <!-- 数据库需要的依赖 --> <dependency> <groupId>org.mybatis.spring.boot</gro ...
随机推荐
- verilog中24LC04B iic(i2c)读写通信设计步骤,以及程序常见写法错误。
板子使用的是黑金的是xilinx spartan-6开发板,首先准备一份24LC04B芯片资料,读懂资料后列出关键参数. 如下: 1.空闲状态为SDA和SCL都为高电平 2.开始状态为:保持SCL,S ...
- Web高级 网站安全
1. SQL注入 虽然现在SQL注入发生的情况总的来说越来越少,还是提二句.关于什么是SQL注入大家都知道就不多说了. 1.1 原理 我们在做前端页面的时候,少不了会又各种输入框,然后通过GET或者P ...
- Linux常见企业面试题
1:只查看test.txt (100行)文件中第20行到30行的数据(企业常见面试题) 答: seq (序列) 第一种方法:head -30 test1.txt | tail -11 第二种方法:se ...
- MAP File
https://warpproject.org/trac/wiki/howto/Linker_scripts_MAP_files Description A MAP file is an output ...
- 4、hello world
package com.ourteam.firstexample; import io.netty.bootstrap.ServerBootstrap;import io.netty.channel. ...
- React 环境增加Redux ,React-Redux
引入 Redux 的目的, 状态管理! React-Redux 就是完成一些粘合剂的作用. 简而化之的理解就是将数据放在store 中维护, 操作逻辑放在reducer中去写. 更功利的表达就是: ...
- Winfrom中的几种传值方式
1.最常见的一种, 不知道你们是否记得构造函数,当然这是对有点基础的人说的, 再我们申明一个类的时候,可能很多时候都不会注意,因为会我们的编辑器自带会默认生成一个不带参数的构造函数, 所以不在意,但是 ...
- awk --- 常用技巧
一.每隔几行取出一个数,输出到另外一个文件 awk '{ if (NR % 9 ==1) {print NR, " => ", $0 } }' kp.txt > xy_ ...
- Java使用Jedis操作Redis大全
Java操作Redis需要导入两个jar: commons-pool2-2.4.2.jar jedis-2.1.0.jar package com.chinasofti.test; import ja ...
- 正确的学python方式
首先呢,和其他的各种学习都一样,你一定要明白你学习的目标是什么.有的人想要通过学习Python,转行成程序员,实现行业上的转变:有的人希望通过学习Python,在现有的岗位上提升自己:当然也有很多人只 ...