数据库连接
sonder 超大杯

关系型数据库MySQL

MySQL是一种关系型数据库管理系统,关系数据库将数据保存在不同的表中,而不是将所有数据放在一个大仓库内,这样就增加了速度并提高了灵活性。

MySQL特点
  • 体积小
  • 速度快
  • 成本低

连接

在java项目下的 resources 目录中找到 application.properties 文件

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
# 应用名称
spring.application.name=demo
# 应用服务 WEB 访问端口
server.port=8080


# 数据库名称
spring.datasource.name=javastudy
# 数据库连接URL
spring.datasource.url=jdbc:mysql://localhost:3306/数据库名称?serverTimezone=Asia/Shanghai
# 用户名
spring.datasource.username=root
# 密码
spring.datasource.password=XXX
# 数据库驱动
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver

遇到的问题

由于我在创建项目中并没有直接安装MySQL相关依赖,于是直接在 pom.xml 中添加,代码如下

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
<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>org.mybatis.spring.boot</groupId>
<artifactId>mybatis-spring-boot-starter</artifactId>
<version>2.1.4</version>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<scope>runtime</scope>
</dependency>

<!-- 这里需要注释 -->
<!-- <dependency>-->
<!-- <groupId>org.springframework</groupId>-->
<!-- <artifactId>spring-jdbc</artifactId>-->
<!-- <version>5.3.20</version>-->
<!-- </dependency>-->

问题示例

在一切准备就绪后,启动报错,如“The server time zone value ‘�й���׼ʱ��‘ is unrecogni…”, 这是时区问题,在连接数据库时,加上UTC即可。

还有“To display the conditions report re-run your application with ‘debug’ enable…”,这里是在添加了依赖后,由于“spring-jdbc”重复导致,注释后就可以了,此外在整个过程中,重启IDE几次,以及右侧Maven刷新了几次,最终解决问题,完美连接上数据库以及获取数据

获取数据

1
2
3
4
5
6
7
8
@Autowired
private JdbcTemplate jdbcTemplate;
@RequestMapping("/GetUserFromDB")
public List GetUserFromDB() {
String sql = "select * from user";
List<Map<String, Object>> list = jdbcTemplate.queryForList(sql);
return list;
}
  • 本文标题:数据库连接
  • 本文作者:sonder
  • 创建时间:2022-09-07 10:14:02
  • 本文链接:https://sonderss.github.io/2022/09/07/数据库连接/
 评论