0


SpringBoot+Mybatis-Plus整合Dm(达梦)数据库

一、达梦数据库的驱动包

1.1、注意事项:大家最关心的莫过于DM数据库的 Dmjdbc.Jar

找到你需要的依赖导入就行了,我这里使用windows版的Dm(达梦数据库)你也可以使用Linux或者(银河麒麟操作系统

1.2 我这里是直接下载了他的jar包直接在pom文件中引入项目中的jar(放在大包下)

1.3、pom文件(如果用的是maven中的那个就不需要上面的操作)
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>
    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>2.7.13</version>
        <relativePath/> <!-- lookup parent from repository -->
    </parent>
    <groupId>com.zking</groupId>
    <artifactId>SpringBootDMdbms</artifactId>
    <version>0.0.1-SNAPSHOT</version>
    <name>SpringBootDMdbms</name>
    <description>SpringBootDMdbms</description>
    <properties>
        <java.version>11</java.version>
    </properties>
    <dependencies>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-freemarker</artifactId>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>
        <!-- mybatis-plus-generator依赖 -->
        <dependency>
            <groupId>com.baomidou</groupId>
            <artifactId>mybatis-plus-generator</artifactId>
            <version>3.5.2</version>
        </dependency>
        <dependency>
            <groupId>org.postgresql</groupId>
            <artifactId>postgresql</artifactId>
            <scope>runtime</scope>
        </dependency>
        <dependency>
            <groupId>org.projectlombok</groupId>
            <artifactId>lombok</artifactId>
            <optional>true</optional>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
        </dependency>
        <dependency>
            <groupId>com.dm</groupId>
            <artifactId>Dm7JdbcDriver</artifactId>
            <version>1.8</version>
            <scope>system</scope>
            <systemPath>${project.basedir}/src/lib/DmJdbcDriver18.jar</systemPath>
        </dependency>
        <dependency>
            <groupId>com.baomidou</groupId>
            <artifactId>mybatis-plus-boot-starter</artifactId>
            <version>3.5.3</version>
        </dependency>
    </dependencies>

    <build>
        <plugins>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
                <configuration>
                    <excludes>
                        <exclude>
                            <groupId>org.projectlombok</groupId>
                            <artifactId>lombok</artifactId>
                        </exclude>
                    </excludes>
                </configuration>
            </plugin>
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
                <configuration>
                    <includeSystemScope>true</includeSystemScope>
                </configuration>
            </plugin>

        </plugins>
    </build>

</project>
**1.4、现在配置application.yml **
#spring
  spring:
    datasource:
      driver-class-name: dm.jdbc.driver.DmDriver
      url: jdbc:dm://192.168.6.129:5236/SYSDBA?zeroDateTimeBehavior=convertToNull&useUnicode=true&characterEncoding=utf-8
      username: SYSDBA
      password: SYSDBA
    hikari:
      minimum-idle: 5
      idle-timeout: 180000
      maximum-pool-size: 10
      auto-commit: true
      pool-name: MyHikariCP
      max-lifetime: 1800000
      connection-timeout: 30000
    freemarker:
      charset: UTF-8
      suffix:
      content-type: text/html
      template-loader-path: classpath:/templates/
      enabled: true
    mvc:
      static-path-pattern: /static/**
  mybatis-plus:
      mapper-locations: classpath*:/mapper/*Mapper.xml
      type-aliases-package: com.zking.springbootdmdbms.model
      configuration:
        map-underscore-to-camel-case: true
  logging:
      level:
        com.zking.shoppingproject.mapper: debug
            以上是application.yml的配置
1.5、配置生成脚本
package com.zking.springbootdmdbms.generator;

import com.baomidou.mybatisplus.annotation.DbType;
import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.generator.AutoGenerator;
import com.baomidou.mybatisplus.generator.FastAutoGenerator;
import com.baomidou.mybatisplus.generator.config.*;
import com.baomidou.mybatisplus.generator.config.rules.NamingStrategy;
import com.baomidou.mybatisplus.generator.engine.FreemarkerTemplateEngine;
import com.baomidou.mybatisplus.generator.fill.Column;

import java.util.Collections;
import java.util.Scanner;

public class CodeGenerator {

    public static void main(String[] args) {
        FastAutoGenerator
                // 数据源配置
                .create("jdbc:dm://192.168.6.129:5236/SYSDBA?zeroDateTimeBehavior=convertToNull&useUnicode=true&characterEncoding=utf-8",
                        "SYSDBA",
                        "SYSDBA")
                // 全局配置
                .globalConfig(builder -> {
                    builder.author("zking")                // 设置作者
                            .outputDir(System.getProperty("user.dir") + "/src/main/java") // 指定输出目录
                            .commentDate("yyyy-MM-dd")   // 注释日期
                            .disableOpenDir();           // 禁止打开输出目录,默认:true
                })
                // 包配置
                .packageConfig(builder -> {
                    builder.parent("com.zking.springbootdmdbms") // 设置父包名
                            //.moduleName("mp")          // 设置父包模块名
                            .entity("model")             // 设置实体类包名
                            .other("utils")              // 自定义文件包名
                            .pathInfo(Collections.singletonMap(OutputFile.xml, System.getProperty("user.dir") + "/src/main/resources/mapper")); // 设置mapperXml生成路径
                })
                // 策略配置
                .strategyConfig((scanner, builder) -> {
                    builder.addInclude(scanner.apply("请输入表名,使用英文的逗号分隔:")) // 设置需要生成的表名
                            .addTablePrefix("t_", "c_") // 设置过滤表前缀

                            // entity 策略配置
                            .entityBuilder()
                            .enableLombok()
                            //.logicDeleteColumnName("deleted")                 //逻辑删除字段名
                            .naming(NamingStrategy.underline_to_camel)          //数据库表映射到实体的命名策略:下划线转驼峰命
                            .columnNaming(NamingStrategy.underline_to_camel)    //数据库表字段映射到实体的命名策略:下划线转驼峰命
//                            .addTableFills(
//                                    new Column("create_time", FieldFill.INSERT),
//                                    new Column("modify_time", FieldFill.INSERT_UPDATE)
//                            )   //添加表字段填充,"create_time"字段自动填充为插入时间,"modify_time"字段自动填充为插入修改时间
                            .enableTableFieldAnnotation()                       // 开启生成实体时生成字段注解

                            // mapper 策略配置
                            .mapperBuilder()
                            .superClass(BaseMapper.class)       //设置父类
                            .formatMapperFileName("%sMapper")   //格式化 mapper 文件名称
                            .enableMapperAnnotation()           //开启 @Mapper 注解
                            .formatXmlFileName("%sMapper")      //格式化 Xml 文件名称 如 UserXml
                            .enableBaseColumnList()             //生成通用查询结果列
                            .enableBaseResultMap()              //生成查询映射结果ResultMap

                            // service 策略配置
                            .serviceBuilder()
                            .formatServiceFileName("%sService")         // 如:UserService
                            .formatServiceImplFileName("%sServiceImpl") // 如:UserServiceImpl

                            // controller 策略配置
                            .controllerBuilder()
                            .formatFileName("%sController")     // 如 UserController
                            .enableRestStyle();                 //开启生成 @RestController 控制器

                })
                // 模板配置
                .templateEngine(new FreemarkerTemplateEngine()) // 使用Freemarker引擎模板,默认的是Velocity引擎模板
                // 执行
                .execute();
    }
}

** 注意:数据源的配置别填错了哦!!! **

生成出来就有 mapper、model、 controller、*mapper.xml、service

可以去Junit中测试。

(可能会出现一些问题就是生成的时候找不到你的数据库,还有测试的时候输出没数据等。。。)

注意:端口不要和我一样哦,填写你自己电脑的IP

测试成功!!!就完事了

** 以上是今天的所有内容希望对在座的各位有所帮助谢谢**


本文转载自: https://blog.csdn.net/LJT_1314520/article/details/132335515
版权归原作者 LJT_1314520 所有, 如有侵权,请联系我们删除。

“SpringBoot+Mybatis-Plus整合Dm(达梦)数据库”的评论:

还没有评论