Spring Boot-使用JDBC连接并检索数据库(Mysql在Docker中)
生活随笔
收集整理的這篇文章主要介紹了
Spring Boot-使用JDBC连接并检索数据库(Mysql在Docker中)
小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
目錄
?
?
基本概念
演示及代碼
如果有亂碼
?
基本概念
在Spring Boot調(diào)用JDBC時(shí)默認(rèn)是用org.apache.tomcat.jdbc.pool.DataSource作為數(shù)據(jù)源;數(shù)據(jù)源的相關(guān)配置都在DataSourceProperties里面;
?
演示及代碼
瀏覽器訪問(wèn)如下:
數(shù)據(jù)庫(kù)數(shù)據(jù)如下:
程序結(jié)構(gòu)如下:
源碼如下:
HelloController.java
package jdbcdemo.demo.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.GetMapping; import org.springframework.web.bind.annotation.ResponseBody;import java.util.List; import java.util.Map;@Controller public class HelloController {@AutowiredJdbcTemplate jdbcTemplate;@ResponseBody@GetMapping("/query")public Map<String, Object> map(){List<Map<String, Object>> list = jdbcTemplate.queryForList("select * from department");return list.get(0);} }application.yml
spring:datasource:username: rootpassword: 123456url: jdbc:mysql://192.168.164.141:3306/jdbcdriver-class-name: com.mysql.jdbc.Driverporn.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 http://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>1.5.19.RELEASE</version><relativePath/> <!-- lookup parent from repository --></parent><groupId>JDBCDemo</groupId><artifactId>demo</artifactId><version>0.0.1-SNAPSHOT</version><name>demo</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-jdbc</artifactId></dependency><dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId></dependency><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></plugin></plugins></build></project>數(shù)據(jù)庫(kù)代碼:
/* SQLyog Ultimate v11.24 (32 bit) MySQL - 5.5.62 : Database - jdbc ********************************************************************* *//*!40101 SET NAMES utf8 */;/*!40101 SET SQL_MODE=''*/;/*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */; /*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */; /*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */; /*!40111 SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0 */; CREATE DATABASE /*!32312 IF NOT EXISTS*/`jdbc` /*!40100 DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci */;USE `jdbc`;/*Table structure for table `department` */DROP TABLE IF EXISTS `department`;CREATE TABLE `department` (`id` int(11) NOT NULL,`departmentName` varchar(50) COLLATE utf8_unicode_ci NOT NULL,PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci;/*Data for the table `department` */insert into `department`(`id`,`departmentName`) values (0,'開(kāi)發(fā)部');/*!40101 SET SQL_MODE=@OLD_SQL_MODE */; /*!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS */; /*!40014 SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS */; /*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */;Docker相關(guān)命令如下:
ip addr docker images docker ps docker run -p 3306:3306 --name mysql01 -e MYSQL_ROOT_PASSWORD=123456 -d mysql:5.5?
如果有亂碼
如果瀏覽器有亂碼,一般是編碼不統(tǒng)一的問(wèn)題:
IDEA的編碼選擇UTF8如下:
數(shù)據(jù)庫(kù)也選擇UTF8編碼:
?
總結(jié)
以上是生活随笔為你收集整理的Spring Boot-使用JDBC连接并检索数据库(Mysql在Docker中)的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: OllyDbg笔记-寄存器以及各种关键指
- 下一篇: 软考系统架构师笔记-综合知识重点(二)