springboot 整合jdbc
在springboot底层无论关系型还是非关系型数据库都是用spring-data进行交互
新建:
通过spring initialer勾选重要依赖jdbc api和mysql driver:

源码分析-设置数据源配置:
通过源码可以看到我们一个通过spring.datasource.xxx来设置我们的yaml配置文件

同时我们可以观察到默认数据源是:

整合案例一:
1.yaml文件:

2.在controller层增删改查:
思考:在没有创建pojo实体类情况下,怎么才能获取数据库表信息并操作之?
答案:map
代码

package com.lian.controller;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import java.util.List;
import java.util.Map;
@RestController//@RestController=@Controller+@ResponseBody
public class JDBCController {
@Autowired
JdbcTemplate jdbcTemplate;
@RequestMapping("/userlist")
public List<Map<String,Object>> list(){
String sql="select * from user";
List<Map<String,Object>> mapList=jdbcTemplate.queryForList(sql);
return mapList;
} @RequestMapping("/useradd")
public String add(){
String sql="insert into user (id, name, pwd) VALUES (11,'消息','dddadd')";
jdbcTemplate.update(sql);
return "add-ok";
}
@RequestMapping("/userdel/{id}")
public String del(@PathVariable("id") int id){
String sql="delete from user where id="+id;
jdbcTemplate.update(sql);
return "del-ok";
}
@RequestMapping("/userupdate/{id}")
public String update(@PathVariable("id") int id){
String sql="update user set name=?,pwd=? where id="+id; Object[] objects=new Object[2];
objects[0]="小明";
objects[1]="skdncc";
jdbcTemplate.update(sql,objects);
return "update-ok";
}
}
总结:
在springboot整合jdbc思路:
1.在创建项目时勾选两个依赖包:Mysql.driver和JDBC.API
2.在配置文件application.properties或者application.yaml配置连接数据库的4要素:
url,username,password,driver-class-name,注意这4要素都在spring.datasource下
3.在controller层调用jdbc模板类 JdbcTemplate 的方法:查询是queryForList,增删改是update方法
springboot 整合jdbc的更多相关文章
- springboot整合JDBC出现Loading class `com.mysql.jdbc.Driver'. This is deprecated. The new driver class is `com.mysql.cj.jdbc.Driver'.
今天使用springboot整合JDBC的使用,开始使用的是 com.mysql.jdbc.Driver驱动 结果运行出现此异常 那我们根据提示要求来修改即可 把驱动改成最新的com.mysql.cj ...
- 3、SpringBoot整合之SpringBoot整合JDBC
SpringBoot整合JDBC 一.创建SpringBoot项目 选择Spring Web.JDBC API.MySQL Driver 二.在pom配置文件中修改JDBC版本,导入lombok &l ...
- SpringBoot 整合jdbc和mybatis
摘要 该文章主要为记录如何在SpringBoot项目中整合JDBC和MyBatis,在整合中我会使用简单的用法和测试用例,毕竟该文章目的是为了整合,而不是教大家如何去使用.希望大家多多包涵. 通用配置 ...
- SpringBoot整合jdbc及整合Druid数据源
一.整合jdbc 1.创建一个springInitializr项目 勾选 web----springweb.SQL----JDBC API,MYSQL Diver 2.连接数据库 3.创建yml 4. ...
- 9 — springboot整合jdbc、druid、druid实现日志监控 — 更新完毕
1.整合jdbc.druid 1).导入依赖 <dependency> <groupId>org.springframework.boot</groupId> &l ...
- SpringBoot整合Jdbc
(1).添加相关依赖 <dependency> <groupId>org.springframework.boot</groupId> <artifactId ...
- SpringBoot整合JDBC模板
目录 Grade实体类 public class Grade { private Integer gradeId; private String gradeName; public Grade(){ ...
- SpringBoot整合JDBC-调用数据库
SpringData 对于数据访问层,无论是 SQL(关系型数据库) 还是 NOSQL(非关系型数据库),Spring Boot 底层都是采用 Spring Data 的方式进行统一处理. Sprin ...
- springboot学习-jdbc操作数据库--yml注意事项--controller接受参数以及参数校验--异常统一管理以及aop的使用---整合mybatis---swagger2构建api文档---jpa访问数据库及page进行分页---整合redis---定时任务
springboot学习-jdbc操作数据库--yml注意事项--controller接受参数以及参数校验-- 异常统一管理以及aop的使用---整合mybatis---swagger2构建api文档 ...
- spring-boot整合mybatis(1)
sprig-boot是一个微服务架构,加快了spring工程快速开发,以及简便了配置.接下来开始spring-boot与mybatis的整合. 1.创建一个maven工程命名为spring-boot- ...
随机推荐
- web初始:html记忆
12.13html框架 <! DOCTYPE html> <html lang="zh-CN"> <head> <meta charset ...
- 改进 hibernate-validator,新一代校验框架 validator 使用介绍 v0.4
项目介绍 java 开发中,参数校验是非常常见的需求.但是 hibernate-validator 在使用过程中,依然会存在一些问题. validator 在 hibernate-validator ...
- 【转载】vue3 中如何像 vue2 的 extend 一样挂载未挂载的组件,拿到标签本身($el)
原文地址:https://blog.csdn.net/qq_39953537/article/details/110437554 vue3 中如何像 vue2 的 extend 一样挂载未挂载的组件, ...
- TCP三次握手一二三问
下面整理下TCP握手和挥手的几个问题,参考资料小林图解计算机网络 1.什么是三次握手? Client端向Server端发送SYN为1的报文段,携带一个初始序列号x,client端进入SYN_SENT状 ...
- 浅谈Vue 2.x当中组件之间传值方式
一.父子之间传值 1. 父传子 :props <!DOCTYPE html> <html lang="en"> <head> <meta ...
- ES5新增数组常见方法(indexof/forEach/map/filter)
新增的数组常见方法:以下说明中,红色为必选参数,蓝色为可选参数 1.indexOf(data,start); 用于返回某个数组或者字符串中规定字符或者字符串的位置: var arr = [" ...
- Vue指令:内置指令和自定义指令
Vue指令 Vue指令指的是,以v-开头的一组特殊语法 内置指令 v-text v-text指令的作用是:设置标签的内容 默认写法会替换全部内容,差值表达式{{ }}只会替换指定内容 内部支持写表达式 ...
- 在Ubuntu中安装Samba文件服务
点击蓝字 关注我们 First Frost 在Ubuntu中安装Samba文件服务 Samba是一个能让Linux系统应用Microsoft网络通讯协议的软件,而SMB是Server Message ...
- python实现微信自动发消息功能
import timeimport uiautomation as autofrom uiautomation.uiautomation import Bitmapimport win32clipbo ...
- [Linux]Linux发展历程
古人云,知其然知其所以然.马哲思想指导着我们,任何事物.问题,离不开:为什么(Why,事物从哪里来?).是什么(What,事物的定位?).怎么做(How,到哪里去?)的哲学3问. 继上个月算是相对彻底 ...