飞道的博客

Mybatis整合达梦数据库

352人阅读  评论(0)
陈老老老板🦸
👨‍💻本文专栏:国产数据库-达梦数据库(主要讲一些达梦数据库相关的内容)
👨‍💻本文简述:本文讲一下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.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>

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

        <dependency>
            <groupId>org.projectlombok</groupId>
            <artifactId>lombok</artifactId>
        </dependency>
        
		<!--达梦数据库驱动-->
        <dependency>
            <groupId>com.dameng</groupId>
            <artifactId>Dm8JdbcDriver18</artifactId>
            <version>8.1.1.49</version>
        </dependency>

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

    </dependencies>

项目截图:

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

这里给大家看一下我的项目结果,mapper的位置和yml文件。

4.编写实体类

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

@Data
public class TestDB1 {
   

    private Integer id;

    private String name;
}

项目截图:

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);
}

项目截图:

6.Mapper.xml文件

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

<?xml version="1.0" encoding="UTF-8"?>
<!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>

项目截图:

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);

    }


}

项目截图:

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

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


转载:https://blog.csdn.net/weixin_47343544/article/details/127837408
查看评论
* 以上用户言论只代表其个人观点,不代表本网站的观点或立场