• Mybatis整合达梦数据库


    陈老老老板🦸
    👨‍💻本文专栏:国产数据库-达梦数据库(主要讲一些达梦数据库相关的内容)
    👨‍💻本文简述:本文讲一下SpringBoot整合Mybatis与达梦数据库,就是简单,一定能实现的案例。
    👨‍💻上一篇文章: JPA整合达梦数据库
    👨‍💻有任何问题,都可以私聊我,我能帮得上的一定帮忙,感谢大佬们支持。
    🦹如果喜欢可以投个票吗?在文章最后,感谢感谢!

    在这里插入图片描述

    一、达梦数据库简介

    说明:有关国产数据库完整的博客太少了,所以就想弄一个完整的专栏给大家提供一些帮助。在现在这种国际形势下,网络安全是每个企业,乃至整个国家重中之重的事,国产化是一种趋势,在整合之前先了解一下达梦数据库。达梦数据库官网:本篇主要讲整合,详细介绍会在别的文章中。

    1.达梦数据库管理系统是达梦公司推出的具有完全自主知识产权的高性能数据库管理系统,简称DM。
    达梦数据库管理系统的最新版本是8.0版本,简称DM8。
    2.DM8采用全新的体系架构,在保证大型通用的基础上,针对可靠性、高性能、海量数据处理和安全性做了大量的研发和改进工作,极大提升了达梦数据库产品的性能、可靠性、可扩展性,能同时兼顾OLTP和OLAP请求,从根本上提升了DM8产品的品质。

    二、Mybatis整合达梦数据库

    说明:本篇使用的是SpringBoot框架+JPA+达梦数据库的整合。
    项目运行环境:

    • idea2020.2
    • DM8
    • jdk1.8
    • springboot 2.3.12.RELEASE

    1、创建项目

    其实创建项目可以省略的,但是还是给大家展示出来吧。详细的步骤就不啰嗦了。

    在这里插入图片描述

    注:选择组件就选lombok就OK了。其实我项目中使用的是springboot2.3.12.RELEASE,因为适配用,非常的稳定。大家自己改用项目版本就可以了。

    在这里插入图片描述

    2、添加坐标

    注:mybatis-spring-boot-starter不用写version就按springboot版本适配就行,而Dm8JdbcDriver18是8以上版本。

     <dependencies>
            <dependency>
                <groupId>org.springframework.bootgroupId>
                <artifactId>spring-boot-starter-webartifactId>
            dependency>
    
            <dependency>
                <groupId>org.springframework.bootgroupId>
                <artifactId>spring-boot-starter-testartifactId>
                <scope>testscope>
            dependency>
    
            <dependency>
                <groupId>org.projectlombokgroupId>
                <artifactId>lombokartifactId>
            dependency>
            
    		
            <dependency>
                <groupId>com.damenggroupId>
                <artifactId>Dm8JdbcDriver18artifactId>
                <version>8.1.1.49version>
            dependency>
    
            <dependency>
                <groupId>org.mybatis.spring.bootgroupId>
                <artifactId>mybatis-spring-boot-starterartifactId>
            dependency>
    
        dependencies>
    
    • 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
    • 26
    • 27
    • 28
    • 29
    • 30

    项目截图:
    在这里插入图片描述

    3.编写配置文件

    注:这里需要先创建一个ZY的模式,在模式下创建一个TESTDB1的表,表中字段:自增Integer id,String name。和一个叫ZY的用户名密码是123456789,这里按自己的更改就可以了,mapper-locations要注意自己的mapper的位置进行更改。

    spring:
      datasource:
        url: jdbc:dm://127.0.0.1:5236?schema=ZY
        username: ZY
        password: 123456789
        driver-class-name: dm.jdbc.driver.DmDriver
    mybatis:
    #  注意这里按自己的mapper文件位置进行更改
      mapper-locations: classpath*:mapper/*Mapper.xml
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9

    这里给大家看一下我的项目结果,mapper的位置和yml文件。
    在这里插入图片描述

    4.编写实体类

    注:这里如果对mybatis了解的话,就需要写一个实体类与数据库表进行映射。这里是在ZY的模式下,TESTDB1表的字段id,name。这里按自己创建的库改也没问题。

    @Data
    public class TestDB1 {
    
        private Integer id;
    
        private String name;
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7

    项目截图:
    在这里插入图片描述

    5.Mapper类(dao)

    注:这里要注意要写@Mapper注解,才能与mapper中的sql进行映射。这里是四个方法查询、新增、修改、删除。

    @Mapper
    public interface TestDB1Mapper {
    
        List<TestDB1> select (Integer id);
    
        void save(String name);
    
        void update(@Param("id") Integer id,@Param("name") String name);
    
        void delete(Integer id);
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11

    项目截图:
    在这里插入图片描述

    6.Mapper.xml文件

    注:这里需要注意namespace 要与Mapper类映射。id要与Mapper类中的方法名映射。

    
    DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
    
    
    <mapper namespace="com.sql.mybatisdm.mapper.TestDB1Mapper">
        <insert id="save">
            insert into testdb1(name) values(#{name});
        insert>
    
        <select id="select" resultType="com.sql.mybatisdm.domain.TestDB1">
            select id,name from testdb1 where id = #{id}
        select>
    
        <update id="update" >
            update TESTDB1  set NAME = #{name} where id = #{id};
        update>
    
        <delete id="delete">
            delete from TESTDB1 where id = #{id};
        delete>
    
    
    mapper>
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23

    项目截图:
    在这里插入图片描述

    7.Test测试文件

    注:这些方法要新填入数据,在进行其他的操作。都是ok的直接用就行,如果有问题可以私信我。

    @SpringBootTest
    class MybatisdmApplicationTests {
    
        @Autowired
        private TestDB1Mapper testDB1Mapper;
    
        /**
         * 保存
         */
        @Test
        void save() {
           testDB1Mapper.save("clllb");
    
            List<TestDB1> select = testDB1Mapper.select(1);
            System.out.println(select);
        }
    
        /**
         * 查询
         */
        @Test
        void select(){
            List<TestDB1> select = testDB1Mapper.select(2);
            System.out.println(select);
        }
    
        /**
         * 修改
         */
        @Test
        void update() {
            testDB1Mapper.update(1,"CLLLB");
    
            List<TestDB1> select = testDB1Mapper.select(1);
            System.out.println(select);
        }
    
        /**
         * 删除
         */
        @Test
        void delete(){
            testDB1Mapper.delete(1);
    
            List<TestDB1> select = testDB1Mapper.select(1);
            System.out.println(select);
    
        }
    
    
    }
    
    • 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
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32
    • 33
    • 34
    • 35
    • 36
    • 37
    • 38
    • 39
    • 40
    • 41
    • 42
    • 43
    • 44
    • 45
    • 46
    • 47
    • 48
    • 49
    • 50
    • 51

    项目截图:
    在这里插入图片描述
    在这里插入图片描述

    总结:国产化是一个不可避免的趋势,整合国产数据库是必须要掌握的一步。希望对您有帮助,感谢阅读

    结束语:裸体一旦成为艺术,便是最圣洁的。道德一旦沦为虚伪,便是最下流的。
    勇敢去做你认为正确的事,不要被世俗的流言蜚语所困扰。

  • 相关阅读:
    更好、更快、更强的多任务全景感知YOLOPv2,目标检测、freespace、车道线检测
    centos 部署 xray 漏洞扫描器
    【Linux】linux的shell脚本
    java强引用,软引用,弱引用,虚引用,终结器引用
    c#动态保留小数位数的数值格式化方法实例----从小数点后非零数字保留两位进行四舍五入
    C语言描述数据结构 —— 常见排序(2)冒泡排序、快速排序
    javascript二维数组(19)不要键名只保留值的算法
    北峰多层级融合通信解决方案,搭建调度“一张图”通信网络
    Springboot搭建微服务案例之Eureka注册中心
    重学操作系统(二)进程管理
  • 原文地址:https://blog.csdn.net/weixin_47343544/article/details/127837408