MyBaits-Plus整合达梦数据库

因为项目要求,需要使用信创软件,项目最终选择了达梦做为数据库软件。此文章介绍了在springboot和MyBatis-Plus环境中整合达梦数据库进行使用。

1、达梦数据库安装

在官网可以很容易的找到详细的安装方法。达梦作为国产数据库软件,提供了很多配套软件使用。其中包含服务器、客户端、驱动、用户手册、数据库服务等组件。按照官网说明选择安装即可。

2、达梦数据库介绍

安装好软件之后,变可以按照官方指导创建并配置DM数据库。创建好数据库后可以对齐进行开启或者关闭操作。创建好的数据库,会自动创建4个管理员账号,包含数据库管理员、数据库安全员、数据库审计员和数据库对象操作员。目的是为了将不同权限分配给不同人员,保证数据库的安全。 可以使用数据库管理员创建用户,分配给开发人员使用。DM数据库中有 模式 的概念。在使用SYSDBA(数据库管理员)新建用户时,会默认分配一个与用户名同名的模式。当前用户便可以在该模式下进行表的操作。

3、MyBatis-Plus整合DM数据库

可以在本地的安装目录 dmdbms8/drivers/jdbc 下找到对应的驱动包 DmJdbcDriver18.jar,复制到项目的lib目录,再加入到maven依赖中。此处也可参照官方 jdbc 驱动手册 readme.txt 中的说明。readme.txt 存放在数据库安装目录下的 /drivers/ jdbc 目录下。DmJdbcDriver16.jar 对应 JDK6, DmJdbcDriver17.jar 对应 JDK7 , DmJdbcDriver18.jar 对应 JDK8 ,请根据开发环境选择合适的 DM JDBC 驱动包。官方文档也有mybaits-plus接入的流程。

  • 依赖
xml 复制代码
<dependencies>

    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-web</artifactId>
    </dependency>

    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-test</artifactId>
    </dependency>

    <dependency>
        <groupId>cn.hutool</groupId>
        <artifactId>hutool-all</artifactId>
        <version>5.8.12</version>
    </dependency>

    <dependency>
        <groupId>org.projectlombok</groupId>
        <artifactId>lombok</artifactId>
    </dependency>

    <dependency>
        <groupId>com.baomidou</groupId>
        <artifactId>mybatis-plus-boot-starter</artifactId>
        <version>3.5.5</version>
    </dependency>
    
    <!--添加数据库驱动安装包-->
    <dependency>
        <groupId>com.dameng</groupId>
        <artifactId>Dm8JdbcDriver18</artifactId>
        <version>8.1.1.193</version>
    </dependency>

    <dependency>
        <groupId>com.baomidou</groupId>
        <artifactId>mybatis-plus-generator</artifactId>
        <version>3.5.5</version>
    </dependency>

    <!-- https://mvnrepository.com/artifact/org.freemarker/freemarker -->
    <dependency>
        <groupId>org.freemarker</groupId>
        <artifactId>freemarker</artifactId>
        <version>2.3.32</version>
    </dependency>

</dependencies>
  • yml配置
yaml 复制代码
spring:
  application:
    name: dmDemo

  datasource:
    driver-class-name: dm.jdbc.driver.DmDriver
    username: TEST_USER
    password: 12345678aa
    url: jdbc:dm://localhost:5236

mybatis-plus:
  mapper-locations: classpath*:xml/*.xml
  configuration:
    map-underscore-to-camel-case: false

其中驱动为dm.jdbc.driver.DmDriver。url为jdbc:dm://localhost:5236,

  • 代码
java 复制代码
@Mapper
public interface UserinfoMapper extends BaseMapper<Userinfo> {
    
}

注意

  • 在创建数据库实例时,最好把大小写敏感关了,不然mybaits-plus查询的时候会大写,导致找不到当前表。此处的大小写是全局的,包括表名、字段名以及字段值。

  • 因为DM数据库也有实例的概念,orcale数据库在使用jdbc链接的时候,url需要指定实例名称 jdbc:oracle:thin:@127.0.0.1:1521/test。其中test是实例名。但是dm数据库在设置jdbc的url时,并没有指定实例名,于是尝试本地再创建一个实例时,发现一个端口只能创建一个实例。所以只要端口区分了,无需指定实例名字。但是模式名字好像是可以指定的jdbc:dm://localhost:5236?schema=TEST_USER。

记录学习,仅供参考

相关推荐
草莓熊Lotso10 小时前
Linux 文件描述符与重定向实战:从原理到 minishell 实现
android·linux·运维·服务器·数据库·c++·人工智能
大模型玩家七七10 小时前
基于语义切分 vs 基于结构切分的实际差异
java·开发语言·数据库·安全·batch
岳麓丹枫00111 小时前
PostgreSQL 中 pg_wal 目录里的 .ready .done .history 文件的生命周期
数据库·postgresql
陌上丨17 小时前
Redis的Key和Value的设计原则有哪些?
数据库·redis·缓存
AI_567817 小时前
AWS EC2新手入门:6步带你从零启动实例
大数据·数据库·人工智能·机器学习·aws
ccecw18 小时前
Mysql ONLY_FULL_GROUP_BY模式详解、group by非查询字段报错
数据库·mysql
JH307318 小时前
达梦数据库与MySQL的核心差异解析:从特性到实践
数据库·mysql
数据知道18 小时前
PostgreSQL 核心原理:如何利用多核 CPU 加速大数据量扫描(并行查询)
数据库·postgresql
麦聪聊数据19 小时前
Web 原生架构如何重塑企业级数据库协作流?
数据库·sql·低代码·架构
未来之窗软件服务19 小时前
数据库优化提速(四)新加坡房产系统开发数据库表结构—仙盟创梦IDE
数据库·数据库优化·计算机软考