教你用springboot連接mysql并實(shí)現(xiàn)增刪改查
1.數(shù)據(jù)庫(kù)與數(shù)據(jù)表的創(chuàng)建
創(chuàng)建名為mybatis的數(shù)據(jù)庫(kù):
create database mybatis;
創(chuàng)建名為user2的數(shù)據(jù)表:
use mybatis; create table user2( id integer not null primary key, name varchar(20) not null, pwd varchar(10) not null, perms varchar(100) null)
生成如下表結(jié)構(gòu):
(已經(jīng)插入了兩行數(shù)據(jù)的)
2.數(shù)據(jù)庫(kù)的連接
注意點(diǎn):url要設(shè)置serverTimezone
比如:jdbc:mysql://localhost:3306?serverTimezone=UTC
連接成功后可以在idea中簡(jiǎn)單測(cè)試一下:
3.結(jié)構(gòu):
4.JDBCController.java
package com.kuang.controller; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.jdbc.core.JdbcTemplate; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.PathVariable; import org.springframework.web.bind.annotation.RestController; import java.util.Map; import java.util.List; import java.lang.*; import java.util.Scanner; @RestController public class JDBCController { @Autowired JdbcTemplate jdbcTemplate; //查詢數(shù)據(jù)庫(kù)的所有信息 //沒(méi)有實(shí)體類,數(shù)據(jù)庫(kù)里的東西,怎么獲?。?Map //查 @GetMapping("/userList") public List<Map<String,Object> > userList(){ String sql="select * from mybatis.user2"; List<Map<String,Object>> list_maps=jdbcTemplate.queryForList(sql); return list_maps; } //增 @GetMapping("/addUser") public String addUser(){ String sql="insert into mybatis.user2(id,name,pwd,perms) values(3,'xiaoming','123456','NULL')"; jdbcTemplate.update(sql); return "add-ok"; } //改 @GetMapping("updateUser/{id}/{name}/{pwd}") public String updateUser(@PathVariable("id") int id,@PathVariable("name") String name,@PathVariable("pwd") String pwd){ String sql="update mybatis.user2 set name=?,pwd=? where id="+id; //封裝Object Object[] objects = new Object[2]; objects[0]=name; objects[1]=pwd; jdbcTemplate.update(sql,objects); return "update-ok"; } //刪 @GetMapping("/deleteUser/{id}") public String deleteUser(@PathVariable("id") int id){ String sql="delete from mybatis.user2 where id=?"; jdbcTemplate.update(sql,id); return "delete-ok"; } }
5.application.yml
spring: datasource: username: root password: liding url: jdbc:mysql://localhost:3306/mybatis?serverTimezone=UTC&useUnicode=true&characterEncoding=utf-8 driver-class-name: com.mysql.jdbc.Driver
6.Springboot04DataApplication.java
package com.kuang; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; @SpringBootApplication public class Springboot04DataApplication { public static void main(String[] args) { SpringApplication.run(Springboot04DataApplication.class, args); } }
7.pom.xml
<?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.0</modelVersion> <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>2.4.5</version> <relativePath/> <!-- lookup parent from repository --> </parent> <groupId>com.kuang</groupId> <artifactId>springboot-04-data</artifactId> <version>0.0.1-SNAPSHOT</version> <name>springboot-04-data</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-web</artifactId> </dependency> <!-- JDBC--> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-jdbc</artifactId> </dependency> <!-- MySQL--> <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> <build> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> <version>2.4.5</version> </plugin> </plugins> </build> </project>
8.pom.xml文件中注意事項(xiàng)
1)<plugin> </plugin>之間的語(yǔ)句爆紅
加上與parent中相同的version號(hào)即可;
2)建立項(xiàng)目時(shí)勾選以下模塊 spring web JDBC API mysql Driver
9.查詢user
啟動(dòng)項(xiàng)目
輸入:localhost:8080/userList
10.修改user
輸入:localhost:8080/updateUser/5/hahahaha/1455
(說(shuō)明:修改id為5的user,名字改為hahahaha,密碼改為1455)
修改后的數(shù)據(jù)表:
11.增加user
輸入:localhost:8080/addUser
(這里先寫一個(gè)簡(jiǎn)單靜態(tài)的addUser吧,寫了半天類似與updateUser的一直報(bào)錯(cuò))
修改后的數(shù)據(jù)表:
12.刪除user
輸入:localhost:8080/deleteUser/3
(刪除id為3的user)
修改后的數(shù)據(jù)表:
到此這篇關(guān)于教你用springboot連接mysql并實(shí)現(xiàn)增刪改查的文章就介紹到這了,更多相關(guān)springboot連接mysql內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Springboot關(guān)于自定義stater的yml無(wú)法提示問(wèn)題解決方案
這篇文章主要介紹了Springboot關(guān)于自定義stater的yml無(wú)法提示問(wèn)題及解決方案,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2023-06-06SpringBoot集成DJL實(shí)現(xiàn)圖片分類功能
DJL是一個(gè)使用Java?API簡(jiǎn)化模型訓(xùn)練、測(cè)試、部署和使用深度學(xué)習(xí)模型進(jìn)行推理的開(kāi)源庫(kù)深度學(xué)習(xí)工具包,開(kāi)源的許可協(xié)議是Apache-2.0,本文給大家介紹了SpringBoot集成DJL實(shí)現(xiàn)圖片分類功能,需要的朋友可以參考下2024-10-10詳解SpringBoot的jar為什么可以直接運(yùn)行
SpringBoot提供了一個(gè)插件spring-boot-maven-plugin用于把程序打包成一個(gè)可執(zhí)行的jar包,本文給大家介紹了為什么SpringBoot的jar可以直接運(yùn)行,文中有相關(guān)的代碼示例供大家參考,感興趣的朋友可以參考下2024-02-02JavaWeb 實(shí)現(xiàn)驗(yàn)證碼功能(demo)
在 WEB-APP 中一般應(yīng)用于:登錄、注冊(cè)、買某票、秒殺等場(chǎng)景,大家都接觸過(guò)這個(gè)驗(yàn)證碼操作,今天小編通過(guò)實(shí)例代碼給大家講解javaweb實(shí)現(xiàn)驗(yàn)證碼功能,需要的朋友參考下2017-02-02Java批量轉(zhuǎn)換文件編碼格式的實(shí)現(xiàn)方法及實(shí)例代碼
這篇文章主要介紹了Java實(shí)現(xiàn) 批量轉(zhuǎn)換文件編碼格式的方法及實(shí)例代碼,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2019-04-04