SpringBoot整合數(shù)據(jù)庫(kù)訪問(wèn)層的實(shí)戰(zhàn)
一、springboot整合使用JdbcTemplate
1.pom依賴
<!--SpringBoot整合jdbc模板框架--> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-jdbc</artifactId> </dependency> <!--SpringBoot整合mysql驅(qū)動(dòng)類--> <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>5.1.21</version> </dependency>
2.application.yml新增配置
spring: datasource: url: jdbc:mysql://localhost:3306/test username: root password: root driver-class-name: com.mysql.jdbc.Driver
3.建表sql
CREATE TABLE `users` ( `id` int(11) NOT NULL AUTO_INCREMENT, `name` varchar(32) NOT NULL COMMENT '用戶名稱', `age` int(11) DEFAULT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8;
4.UserService
@RestController public class UserService { @Autowired private JdbcTemplate jdbcTemplate; @RequestMapping("/insertUser") public String insertUser(String name,Integer age){ int update = jdbcTemplate.update("insert into users values(null,?,?);", name, age); return update > 0 ? "success" : "false"; } }
5.瀏覽器訪問(wèn)
http://127.0.0.1:8080/insertUser?name=你好&age=21
二、整合mybatis框架查詢
1.pom依賴
<!-- springboot 整合mybatis --> <dependency> <groupId>org.mybatis.spring.boot</groupId> <artifactId>mybatis-spring-boot-starter</artifactId> <version>1.1.1</version> </dependency>
2.實(shí)體類UserEntity
public class UserEntity { private String userName; private Integer age; private Integer id; //GET...SET...省略 }
3.UserMapper接口
public interface UserMapper { @Select("select id as id,name as userName,age as age from users where id = #{id};") UserEntity selectByUserId(@Param("id") Integer id); }
4.UserService
@RestController public class UserService { @Autowired private UserMapper userMapper; @RequestMapping("/mybatisFindById") public UserEntity mybatisFindById(Integer id){ return userMapper.selectByUserId(id); } }
5.app啟動(dòng)
注意:這里需要加注解@MapperScan("com.sjyl.mapper")
來(lái)告訴spring接口mapper的掃包范圍
@SpringBootApplication @MapperScan("com.sjyl.mapper") public class App { public static void main(String[] args) { SpringApplication.run(App.class); } }
測(cè)試連接:http://127.0.0.1:8080/mybatisFindById?id=3
三、整合mybatis框架插入
1.UserMapper添加insertUser
public interface UserMapper { @Insert("Insert into users values (null,#{userName},#{age});") int insertUser(@Param("userName") String userName,@Param("age") Integer age); @Select("select id as id,name as userName,age as age from users where id = #{id};") UserEntity selectByUserId(@Param("id") Integer id); }
2.UserService添加insertUserMybatis
@RestController public class UserService { @Autowired private UserMapper userMapper; @RequestMapping("/mybatisFindById") public UserEntity mybatisFindById(Integer id){ return userMapper.selectByUserId(id); } @RequestMapping("/insertUserMybatis") public String insertUserMybatis(String userName,Integer age){ int insert = userMapper.insertUser(userName,age); return insert > 0 ? "success" : "false"; } }
測(cè)試連接:http://127.0.0.1:8080/insertUserMybatis?userName=%E5%BC%A0%E4%B8%89&age=21
到此這篇關(guān)于SpringBoot整合數(shù)據(jù)庫(kù)訪問(wèn)層的實(shí)戰(zhàn)的文章就介紹到這了,更多相關(guān)SpringBoot 數(shù)據(jù)庫(kù)訪問(wèn)層內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
- SpringBoot使用MyBatis-Flex實(shí)現(xiàn)靈活的數(shù)據(jù)庫(kù)訪問(wèn)
- SpringBoot中使用JdbcTemplate訪問(wèn)Oracle數(shù)據(jù)庫(kù)的案例詳解
- SpringBoot訪問(wèn)MongoDB數(shù)據(jù)庫(kù)的兩種方式
- SpringBoot使用JdbcTemplate訪問(wèn)操作數(shù)據(jù)庫(kù)基本用法
- SpringBoot快速整合Mybatis、MybatisPlus(代碼生成器)實(shí)現(xiàn)數(shù)據(jù)庫(kù)訪問(wèn)功能
- SpringBoot如何訪問(wèn)不同的數(shù)據(jù)庫(kù)的方法實(shí)現(xiàn)
相關(guān)文章
springBoot 與neo4j的簡(jiǎn)單整合示例
這篇文章主要介紹了springBoot 與neo4j的簡(jiǎn)單整合示例,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2019-01-01在Linux上搭建一個(gè)Java部署環(huán)境的詳細(xì)步驟
這篇文章主要介紹了在Linux上搭建一個(gè)Java部署環(huán)境,安裝jdk有很多種方式,但是我們這里推薦的是使用yum直接安裝openjdk,本文給大家介紹的非常詳細(xì),需要的朋友可以參考下2023-01-01java圖論弗洛伊德和迪杰斯特拉算法解決最短路徑問(wèn)題
這篇文章主要為大家介紹了java圖論弗洛伊德算法和迪杰斯特拉算法解決最短路徑的問(wèn)題示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助2021-11-11Java 8跳過(guò)本次循環(huán),繼續(xù)執(zhí)行以及跳出循環(huán),終止循環(huán)的代碼實(shí)例
今天小編就為大家分享一篇關(guān)于Java 8跳過(guò)本次循環(huán),繼續(xù)執(zhí)行以及跳出循環(huán),終止循環(huán)的代碼實(shí)例,小編覺(jué)得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來(lái)看看吧2018-10-10C語(yǔ)言中下標(biāo)與指針的轉(zhuǎn)換以及指向指針的指針的例子
這篇文章主要介紹了C語(yǔ)言中下標(biāo)與指針的轉(zhuǎn)換以及指向指針的指針的示例,是C語(yǔ)言入門學(xué)習(xí)中的基礎(chǔ)知識(shí),需要的朋友可以參考下2015-11-11Java實(shí)現(xiàn)一個(gè)小說(shuō)采集程序的簡(jiǎn)單實(shí)例
下面小編就為大家?guī)?lái)一篇Java實(shí)現(xiàn)一個(gè)小說(shuō)采集程序的簡(jiǎn)單實(shí)例。小編覺(jué)得挺不錯(cuò)的, 現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2016-06-06java 注解實(shí)現(xiàn)一個(gè)可配置線程池的方法示例
這篇文章主要介紹了java 注解實(shí)現(xiàn)一個(gè)可配置線程池的方法示例,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2019-01-01