2000字范文,分享全网优秀范文,学习好帮手!
2000字范文 > Spring Boot-使用JDBC连接并检索数据库(Mysql在Docker中)

Spring Boot-使用JDBC连接并检索数据库(Mysql在Docker中)

时间:2020-07-30 05:17:02

相关推荐

Spring Boot-使用JDBC连接并检索数据库(Mysql在Docker中)

目录

基本概念

演示及代码

如果有乱码

基本概念

在Spring Boot调用JDBC时默认是用org.apache.tomcat.jdbc.pool.DataSource作为数据源;数据源的相关配置都在DataSourceProperties里面;

演示及代码

浏览器访问如下:

数据库数据如下:

程序结构如下:

源码如下:

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;@Controllerpublic 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.Driver

porn.xml

<?xml version="1.0" encoding="UTF-8"?><project xmlns="/POM/4.0.0" xmlns:xsi="/2001/XMLSchema-instance"xsi:schemaLocation="/POM/4.0.0 /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>

数据库代码:

/*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,'开发部');/*!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相关命令如下:

ip addrdocker imagesdocker psdocker run -p 3306:3306 --name mysql01 -e MYSQL_ROOT_PASSWORD=123456 -d mysql:5.5

如果有乱码

如果浏览器有乱码,一般是编码不统一的问题:

IDEA的编码选择UTF8如下:

数据库也选择UTF8编码:

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。