iis服务器助手广告广告
返回顶部
首页 > 资讯 > 后端开发 > Python >SpringBoot如何整合mybatis-generator-maven-plugin1.4.0
  • 833
分享到

SpringBoot如何整合mybatis-generator-maven-plugin1.4.0

Python 官方文档:入门教程 => 点击学习

摘要

目录SpringBoot实现整合mybatis-generator-Maven-plugin 1.4.0创建 Maven 工程pom.xml 引入依赖和插件generatorConf

springBoot实现整合mybatis-generator-maven-plugin 1.4.0

创建 Maven 工程

网上有很多教程idea 可以直接创建 这里就不进行

pom.xml 引入依赖和插件

pom中generalto-maven-plugs中必须指定Mysql驱动,并且明确版本

<?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.5.0</version>
        <relativePath/> <!-- lookup parent from repository -->
    </parent>
    <groupId>top.orginly</groupId>
    <artifactId>mall</artifactId>
    <version>0.0.1-SNAPSHOT</version>
    <name>mall</name>
    <description>Demo project for Spring Boot</description>
    <properties>
        <java.version>11</java.version>
    </properties>
    <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.mybatis.spring.boot</groupId>
            <artifactId>mybatis-spring-boot-starter</artifactId>
            <version>2.2.0</version>
        </dependency>
        <!-- mysql8 驱动 -->
        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <version>8.0.24</version>
        </dependency>
    </dependencies>

    <build>
        <plugins>
            <!-- springboot的maven插件 -->
            <plugin>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-maven-plugin</artifactId>
            </plugin>

            <plugin>
                <groupId>org.mybatis.generator</groupId>
                <artifactId>mybatis-generator-maven-plugin</artifactId>
                <version>1.4.0</version>
                <configuration>
                    <!-- mybatis用于生成代码的配置文件 如果配置文件名为generatorConfig.xml 则不需要配置 -->
                    <!-- <configurationFile>src/main/resources/generator/generatorConfig.xml</configurationFile>-->
                    <!-- 允许移动生成的文件 -->
                    <verbose>true</verbose>
                    <!-- 启用覆盖 -->
                    <overwrite>true</overwrite>
                </configuration>
                <!-- 引入插件所需要的依赖 -->
                <dependencies>
                    <dependency>
                        <groupId>mysql</groupId>
                        <artifactId>mysql-connector-java</artifactId>
                        <version>8.0.24</version>
                    </dependency>
                </dependencies>
            </plugin>
        </plugins>
    </build>

</project>

generatorConfig.xml 自动生成配置文件

table标签中需要指定tableName和生成的实体名字

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE generatorConfiguration PUBLIC "-//mybatis.org//DTD MyBatis Generator Configuration 1.0//EN"
        "http://mybatis.org/dtd/mybatis-generator-config_1_0.dtd">
<generatorConfiguration>
    <context id="DB2Tables" targetRuntime="MyBatis3">
        <commentGenerator>
            <!-- 是否生成注释代时间戳-->
            <property name="suppressDate" value="true"/>
            <!-- 是否去除自动生成的注释 true:是 : false:否 -->
            <property name="suppressAllComments" value="true"/>
        </commentGenerator>
        <!--数据库链接地址账号密码-->
        <jdbcConnection driverClass="com.mysql.cj.jdbc.Driver"
                        connectionURL="jdbc:mysql://172.17.0.2:3306/spring-boot-mall?useUnicode=true&amp;characterEncoding=UTF-8&amp;serverTimezone=Asia/Shanghai"
                        userId="root"
                        passWord="000">
        </jdbcConnection>
        <javaTypeResolver>
            <!--该属性可以控制是否强制DECIMAL和NUMERIC类型的字段转换为Java类型的java.math.BigDecimal,默认值为false,一般不需要配置。-->
            <property name="forceBigDecimals" value="false"/>
        </javaTypeResolver>
        <!--生成Model类存放位置-->
        <javaModelGenerator targetPackage="top.orginly.mall.model.pojo" targetProject="src/main/java">
            <!--enableSubPackages:如果true,MBG会根据catalog和schema来生成子包。如果false就会直接用targetPackage属性。默认为false。-->
            <property name="enableSubPackages" value="true"/>
            <!--trimStrings:是否对数据库查询结果进行trim操作,如果设置为true就会生成类似这样public void setUsername(String username) {this.username = username == null &#63; null : username.trim();}的setter方法。默认值为false。-->
            <property name="trimStrings" value="true"/>
        </javaModelGenerator>
        <!--生成映射xml文件存放位置-->
        <sqlMapGenerator targetPackage="mappers" targetProject="src/main/resources">
            <property name="enableSubPackages" value="true"/>
        </sqlMapGenerator>
        <!--生成Dao类存放位置(*Mapper.java)-->
        <!-- 客户端代码,生成易于使用的针对Model对象和XML配置文件 的代码
            type="ANNOTATEDMAPPER",生成Java Model 和基于注解的Mapper对象
            type="MIXEDMAPPER",生成基于注解的Java Model 和相应的Mapper对象
            type="XMLMAPPER",生成SQLMap XML文件和独立的Mapper接口
        -->
        <javaClientGenerator type="XMLMAPPER" targetPackage="top.orginly.mall.model.dao" targetProject="src/main/java">
            <property name="enableSubPackages" value="true"/>
        </javaClientGenerator>

        <!--生成对应表及类名-->
        <table tableName="mall_user" domainObjectName="User" enableCountByExample="false" enableUpdateByExample="false"
               enableDeleteByExample="false" enableSelectByExample="false" selectByExampleQueryId="false">
            <!--useActualColumnNames:如果设置为true,那么MBG会使用从数据库元数据获取的列名作为生成的实体对象的属性。 如果为false(默认值),MGB将会尝试将返回的名称转换为驼峰形式。 在这两种情况下,可以通过 元素显示指定,在这种情况下将会忽略这个(useActualColumnNames)属性。-->
            <property name="useActualColumnNames" value="true"/>
            <!-- 数据库表主键 可以不设置 -->
             <!-- <generatedKey column="id" sqlStatement="Mysql" identity="true"/> -->
        </table>
       
    </context>
</generatorConfiguration>

运行生成文件

这里推荐使用IDEA
我们只需要找到右边侧栏中的maven
依次找到 plugins–>mybatis-generaltor–>mybatis-generaltor:generaltor
之后双击即可,此时刷新一下项目就自动生成我们想要的,mapper和xml以及pojo

提示 BUILD SUCCESS 即生成成功!

[INFO] Scanning for projects...
[INFO] 
[INFO] [INFO] Building mall 0.0.1-SNAPSHOT
[INFO] [INFO] 
[INFO] [INFO] Connecting to the Database
[INFO] Introspecting table mall_user
[INFO] Introspecting table mall_cateGory
[INFO] Introspecting table mall_goods
[INFO] Introspecting table mall_order
[INFO] Introspecting table mall_order_goods
[INFO] Introspecting table mall_cart
[INFO] Generating Primary Key class for table mall_user
[INFO] Generating Record class for table mall_user
[INFO] Generating Mapper Interface for table mall_user
[INFO] Generating SQL Map for table mall_user
[INFO] Generating Record class for table mall_category
[INFO] Generating Mapper Interface for table mall_category
[INFO] Generating SQL Map for table mall_category
[INFO] Generating Record class for table mall_goods
[INFO] Generating Mapper Interface for table mall_goods
[INFO] Generating SQL Map for table mall_goods
[INFO] Generating Primary Key class for table mall_order
[INFO] Generating Record class for table mall_order
[INFO] Generating Mapper Interface for table mall_order
[INFO] Generating SQL Map for table mall_order
[INFO] Generating Record class for table mall_order_goods
[INFO] Generating Mapper Interface for table mall_order_goods
[INFO] Generating SQL Map for table mall_order_goods
[INFO] Generating Record class for table mall_cart
[INFO] Generating Mapper Interface for table mall_cart
[INFO] Generating SQL Map for table mall_cart
[INFO] Saving file UserMapper.xml
[INFO] Saving file CategoryMapper.xml
[INFO] Saving file GoodsMapper.xml
[INFO] Saving file OrderMapper.xml
[INFO] Saving file OrderGoodsMapper.xml
[INFO] Saving file CartMapper.xml
[INFO] Saving file UserKey.java
[INFO] Saving file User.java
[INFO] Saving file UserMapper.java
[INFO] Saving file Category.java
[INFO] Saving file CategoryMapper.java
[INFO] Saving file Goods.java
[INFO] Saving file GoodsMapper.java
[INFO] Saving file OrderKey.java
[INFO] Saving file Order.java
[INFO] Saving file OrderMapper.java
[INFO] Saving file OrderGoods.java
[INFO] Saving file OrderGoodsMapper.java
[INFO] Saving file Cart.java
[INFO] Saving file CartMapper.java
[INFO] [INFO] BUILD SUCCESS
[INFO] [INFO] Total time:  2.193 s
[INFO] Finished at: 2021-06-01T22:33:37+08:00
[INFO] 

配置 mybatis 数据源及 mappers 路径

编辑配置文件 /src/main/resources/application.properties

# 数据源名称
spring.datasource.name=spring_boot_mall
# 数据库连接 url
spring.datasource.url=jdbc:mysql://172.17.0.2:3306/spring-boot-mall?useUnicode=true&characterEncoding=UTF-8&autoReconnect=true&useSSl=false;serverTimezone=Asia/Shanghai
# 数据库驱动类
spring.datasource.driver-class-name=com.mysql.cj.jdbc.Driver
# 用户名
spring.datasource.username=root
# 密码
spring.datasource.password=000

# 设置Mybatis Mapper文件路径
mybatis.config-location=classpath:mappers/*.xml

注意事项

报错 dao类无法找到

需要在spring-boot 入口类/src/main/java/top/orginly/mall/MallApplication.java中添加注解
@MapperScan(basePackages = "top.orginly.mall.model.dao")
指向mapper对应的类

@SpringBootApplication
@MapperScan(basePackages = "top.orginly.mall.model.dao")
public class MallApplication {

    public static void main(String[] args) {
        SpringApplication.run(MallApplication.class, args);
    }

}

Service 实体类无法自动载入

类添加 @Service 注解后 出现找不到 Mapper 类无法找到

报错但不影响程序正常运行但我们要解决掉,需要给 Mapper 添加 @Repository 注解告诉 IDEA 这是一个资源类

重新生成后运行出错

必须先删除 model 包和 mapper文件!!!

到此这篇关于SpringBoot如何整合mybatis-generator-maven-plugin 1.4.0的文章就介绍到这了,更多相关SpringBoot整合mybatis-generator-maven-plugin 1.4.0内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

--结束END--

本文标题: SpringBoot如何整合mybatis-generator-maven-plugin1.4.0

本文链接: https://www.lsjlt.com/news/177540.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • SpringBoot如何整合mybatis-generator-maven-plugin1.4.0
    目录SpringBoot实现整合mybatis-generator-maven-plugin 1.4.0创建 Maven 工程pom.xml 引入依赖和插件generatorConf...
    99+
    2023-01-12
    SpringBoot整合mybatis-generator-maven-plugin 1.4.0 SpringBoot整合mybatis-generator-maven-plugin SpringBo
  • SpringBoot整合Mybatis Generator自动生成代码
    目录1.创建SpringBoot项目2. mybatis-generator-maven插件的配置3. 项目结构构建4. application.yml配置5. generatorC...
    99+
    2024-04-02
  • SpringBoot整合mybatis-generator插件流程详细讲解
    mybatis-generator 插件 mybatis 相关依赖 <dependency> <groupId>org.mybatis.spring....
    99+
    2023-02-03
    SpringBoot整合mybatis-generator SpringBoot整合mybatis-generator插件
  • SpringBoot如何整合MyBatis-Plus
    这篇文章主要为大家展示了“SpringBoot如何整合MyBatis-Plus”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“SpringBoot如何整合MyBatis-Plus”这篇文章吧。环境...
    99+
    2023-06-29
  • maven grpc整合springboot demo
    目录1. 说明2. 公共部分2.1 添加依赖2.2 添加proto依赖文件2.3 通过protobuf生成Java代码3. server端接口具体实现4 client端接口具体实现1...
    99+
    2024-04-02
  • Spring+SpringMVC+MyBatis+Maven框架整合
    本文记录了Spring+SpringMVC+MyBatis+Maven框架整合的记录,主要记录以下几点 一、Maven需要引入的jar包 二、Spring与SpringMVC的配置分离&...
    99+
    2024-04-02
  • SpringBoot怎么整合mybatis+mybatis-plus
    本文小编为大家详细介绍“SpringBoot怎么整合mybatis+mybatis-plus”,内容详细,步骤清晰,细节处理妥当,希望这篇“SpringBoot怎么整合mybatis+mybatis-plus”文章能帮助大家解决疑惑,下面跟...
    99+
    2023-07-02
  • SpringBoot怎么整合Mybatis
    这篇文章主要介绍了SpringBoot怎么整合Mybatis的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇SpringBoot怎么整合Mybatis文章都会有所收获,下面我们一起来看看吧。Mybatis的简单介...
    99+
    2023-07-05
  • Springboot整合mybatis的步骤
    目录前期工作1.导入mybatis整合依赖2.连接数据库3.连接完数据库就去applicaton.yml配置一下数据库开始整合1.编写与数据库对应的实体类2.编写mapper3.编写...
    99+
    2024-04-02
  • maven grpc整合springboot demo的方法
    这篇文章主要介绍了maven grpc整合springboot demo的方法的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇maven grpc整合springboot ...
    99+
    2023-06-30
  • springboot整合mybatis流程详解
    目录1.mybatis是什么2.整合2.1 导入依赖2.2 创建包和类2.3 在application.yaml配置mybatis3.使用注解版mybaits4.实战过程1.myba...
    99+
    2024-04-02
  • springboot 中怎么整合fluent mybatis
    这篇文章给大家介绍springboot 中怎么整合fluent mybatis,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。导入pom依赖<!--     &nb...
    99+
    2023-06-20
  • SpringBoot热部署和整合Mybatis
    目录 一、SpringBoot热部署 1.1 添加DevTools依赖 1.2 在idea中设置自动编译 1.3 在Idea设置自动运行 二、SpringBoot整合Mybatis 2.1 准备数据 2.2 添加相关依赖 2.3 在配置文件...
    99+
    2023-10-20
    spring boot mybatis java 原力计划
  • springboot如何整合mybatis将sql打印到日志
    这篇文章主要介绍了springboot如何整合mybatis将sql打印到日志,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。在前台请求数据的时候,sql语句一直都是打印到控制...
    99+
    2023-05-30
    mybatis spring boot
  • SpringBoot 整合mybatis+mybatis-plus的详细步骤
    目录前言准备工作整合步骤前言 在真实的项目开发中,使用SpringBoot可以说非常普遍了,而在框架整合中,与数据库的交互无外乎使用jpa,mybatis,mybatis-plus这...
    99+
    2024-04-02
  • SpringBoot如何整合chatGPT
    这篇文章主要讲解了“SpringBoot如何整合chatGPT”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“SpringBoot如何整合chatGPT”吧!1 添加依赖  ...
    99+
    2023-07-06
  • SpringBoot整合Mybatis+人大金仓(kingbase8)
    陈老老老板🦸 👨‍💻本文专栏:国产数据库-人大金仓(kingbase8)(主要讲一些人大金仓数据库相关的内容) 👨‍💻本文简述:本文讲一下My...
    99+
    2023-08-17
    mybatis spring boot java
  • springboot如何整合elasticsearch
    目录前言不同方式演示简单看一下集成先决配置Spring Data Elasticsearch方式ElasticsearchRestTemplate方式总结前言 推荐首先查看sprin...
    99+
    2023-05-18
    springboot整合elasticsearch springboot elasticsearch
  • JWT如何整合Springboot
    这篇文章将为大家详细讲解有关JWT如何整合Springboot,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。1.基于JWT认证1.1 认证流程首先,前端通过Web表单将自己的用户名和密码发送到后端的接口。...
    99+
    2023-06-21
  • SpringBoot如何整合JPA
    这篇文章将为大家详细讲解有关SpringBoot如何整合JPA,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。JPA全称Java Persistence API.JPA通过JDK 5.0注解或XML描述对象...
    99+
    2023-06-19
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作