一、准备达梦数据库的驱动包 https://eco.dameng.com/download/ 中下载 滑倒最底部

解压后选择你的驱动版本,本文使用DmJdbcDriver8来演示
在这里插入图片描述
二、SpringBoot 操作 达梦数据库
1、引入达梦数据库驱动

a. 放置到项目的lib目录下,以绝对路径方式引入
在这里插入图片描述

 		<!-- 达梦数据库驱动 -->
        <dependency>
            <groupId>com.dm</groupId>
            <artifactId>DmJdbcDriver8</artifactId>
            <version>1.8</version>
            <scope>system</scope>
            <systemPath>${project.basedir}/src/main/resources/lib/DmJdbcDriver8.jar</systemPath>
        </dependency>

b.手动安装Jar到本地Maven仓库,正常引入

使用mvn install:install-file命令将Jar包手动安装到本地Maven仓库。以下是命令示例:
path-to-file:maven 仓库目录
mvn install:install-file -Dfile=path-to-file -DgroupId= com.dm -DartifactId= DmJdbcDriver8 -Dversion= 1.8 -Dpackaging=jar

	<dependency>
            <groupId>com.dm</groupId>
            <artifactId>DmJdbcDriver8</artifactId>
            <version>1.8</version>
	</dependency>

2、SpringBoot yaml配置

spring:
    datasource:
        url: jdbc:dm://localhost:5236
        driver-class-name: dm.jdbc.driver.DmDriver
        username: SYSDBA
        password: SYSDBA

3.实体类配置,达梦数据库跟Oracle语法类似,要指定模式,达梦数据库的语法特殊性,避免冲突,数据库字段设计单词都最好大写

@Getter
@Setter
@TableName(value = "T_AREA",schema = "TEST")
@ApiModel(value = "Area对象", description = "区域表")
public class Area implements Serializable {

    private static final long serialVersionUID = 1L;

    @TableId(value = "ID", type = IdType.AUTO)
    private Integer id;

    @ApiModelProperty("区域id")
    @TableField("AREA_ID")
    private String areaId;

    @ApiModelProperty("区域名称")
    @TableField("AREA_NAME")
    private String areaName;

    @ApiModelProperty("区域类型 县/市/省")
    @TableField("AREA_TYPE")
    private String areaType;

    @ApiModelProperty("父级id")
    @TableField("PARENT_ID")
    private String parentId;
}

模式指定有两种写法

@TableName(value = "TEST.T_AREA",schema = "TEST")
或者
@TableName(value = "TEST.T_AREA")

4.mybatis-plus分页设置,指定分页拦截器类型为达梦

	@Bean
    public MybatisPlusInterceptor mybatisPlusInterceptor(){
        MybatisPlusInterceptor interceptor =  new MybatisPlusInterceptor();
        interceptor.addInnerInterceptor(new PaginationInnerInterceptor(DbType.DM));
        return interceptor;
    }

现在就可以正常使用了

Logo

DAMO开发者矩阵,由阿里巴巴达摩院和中国互联网协会联合发起,致力于探讨最前沿的技术趋势与应用成果,搭建高质量的交流与分享平台,推动技术创新与产业应用链接,围绕“人工智能与新型计算”构建开放共享的开发者生态。

更多推荐