本章主要介绍在 Java 开发的时候,如何使用 SpringBoot Jdbc 框架快速连接 DM 数据库。
环境介绍
软件 | 版本 |
---|---|
DM 数据库 | DM 8.0 及以上版本 |
Idea | IntelliJ IDEA 2019.3.3 x64 |
JDK | JDK 8 |
Maven | apache-maven-3.5.4 |
Spring Boot | 2.4.0 |
Spring Boot Jdbc | 2.4.0 |
示例代码下载
开发步骤
Idea 创建 SpringBoot 项目
对应的依赖配置如下:
<!--引入 springboot start-->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter</artifactId>
</dependency>
<!-- 引入jdbc支持 -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-jdbc</artifactId>
</dependency>
<!-- 引入web支持 -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
<!-- 引入devtools支持 -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-devtools</artifactId>
<scope>runtime</scope>
<optional>true</optional>
</dependency>
<!-- 引入test -->
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
添加数据库驱动包
<!-- 添加镜像仓库配置-->
<repositories>
<!-- 使用阿里云镜像仓库用来提高下载速度-->
<repository>
<id>aliyun</id>
<name>aliyun Repository</name>
<url>http://maven.aliyun.com/nexus/content/groups/public</url>
<snapshots>
<enabled>false</enabled>
</snapshots>
</repository>
<!-- 使用 DM 的镜像仓库来下载驱动包-->
<repository>
<id>dc</id>
<name>dc Repository</name>
<url>http://119.96.92.173:8181/repository/maven-releases/</url>
<snapshots>
<enabled>false</enabled>
</snapshots>
</repository>
</repositories>
<!-- 添加 dm8 jdbc jar 包依赖-->
<dependency>
<groupId>com.dameng</groupId>
<artifactId>dm-jdbc</artifactId>
<version>1.8</version>
</dependency>
<!--如果驱动包报错,可以添加本地驱动-->
<!-- <dependency>-->
<!-- <groupId>com.dameng</groupId>-->
<!-- <artifactId>dm-jdbc</artifactId>-->
<!-- <version>1.8</version>-->
<!-- <scope>system</scope>-->
<!-- <systemPath>${project.basedir}/lib/DmJdbcDriver18.jar</systemPath>-->
<!-- </dependency>-->
注意如果驱动包报错,可以在本地的安装目录 dmdbms8/drivers/jdbc 下找到对应的驱动包 DmJdbcDriver18.jar,复制到项目的lib目录,再加入到maven依赖中。
配置数据库连接信息
在 application.properties 配置连接信息如下:
# 数据库的连接配置
spring.datasource.url=jdbc:dm://localhost:5236/
spring.datasource.username=SYSDBA
spring.datasource.password=SYSDBA
spring.datasource.driver-class-name=dm.jdbc.driver.DmDriver
编写测试代码
创建一个测试使用的控制器类 DbController.java。
package com.dm.dmspringbootdemo;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.jdbc.core.JdbcTemplate;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;
import java.util.List;
@RestController
public class DbController {
/**
* 注入 jdbcTemplate 模板对象
*/
@Autowired
private JdbcTemplate jdbcTemplate;
@GetMapping("/queryDbVersion")
public List queryDbVersion() {
return jdbcTemplate.queryForList(
"SELECT banner as 版本信息 FROM v$version");
}
}
验证连接是否成功
启动应用程序,在浏览器上访问 http://localhost:8080/queryDbVersion
如果返回如下信息(数据库版本信息),则表示连接成功。
[{"版本信息":"DM Database Server 64 V8\n"},{"版本信息":"DB Version: 0x7000a"}]