0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

Mybatis自动生成增删改查代码

Java开发 来源:代码的路 作者:代码的路 2023-01-13 15:43 次阅读

GitHub项目地址

Gitee项目地址

使用 mybatis generator 自动生成代码,实现数据库的增删改查。

1 配置Mybatis插件

在pom文件添加依赖:


更新依赖成功后,可以在maven中看到已经有了mybatis插件

2 创建库表

在数据库创建表格,具体方式见:本地安装并创建MySQL数据库

3 配置参数

src/main/resources/mybatis-generator.xml :

generatorConfiguration PUBLIC
        "-//mybatis.org//DTD MyBatis Generator Configuration 1.0//EN"
        "http://mybatis.org/dtd/mybatis-generator-config_1_0.dtd" >
<generatorConfiguration>
    <context id="context" targetRuntime="MyBatis3">

        
        <commentGenerator>
            <property name="suppressAllComments" value="true"/>
            <property name="suppressDate" value="true"/>
        <span class="hljs-name"commentGenerator>

        
        <jdbcConnection   driverClass="com.mysql.jdbc.Driver"
                          connectionURL="jdbc:mysql://localhost:3306/sys" userId="root" password="root"/>

        <javaTypeResolver>
            <property name="forceBigDecimals" value="false"/>
        <span class="hljs-name"javaTypeResolver>

        
        <javaModelGenerator targetPackage="com.spring.boot.dao.model" targetProject="src/main/java">
            <property name="enableSubPackages" value="false"/>
            <property name="trimStrings" value="true"/>
        <span class="hljs-name"javaModelGenerator>

        
        <sqlMapGenerator targetPackage="mapper" targetProject=".\\src\\main\\resources">
            <property name="enableSubPackages" value="false"/>
        <span class="hljs-name"sqlMapGenerator>

        
        <javaClientGenerator targetPackage="com.spring.boot.dao" targetProject="src/main/java" type="XMLMAPPER">
            <property name="enableSubPackages" value="false"/>
        <span class="hljs-name"javaClientGenerator>

        
        <table tableName="user_data"
               domainObjectName="UserDataPo"
               enableCountByExample="false"
               enableDeleteByExample="false"
               enableSelectByExample="false"
               enableUpdateByExample="false"/>

    <span class="hljs-name"context>
<span class="hljs-name"generatorConfiguration>

4 运行插件

双击 mybatis-generator:generate,运行插件。

可以看到已经生成了三个文件:

在 UserDataPoMapper.java 中,添加 @Mapper ,否则会出现报错。

5 编写其他代码

mybatis自动生成了数据类、接口文件和xml文件,我们只需编写controller和servic层即可。

6 报错问题

如果出现报错:

Consider defining a bean of type ‘com.spring.boot.dao.UserDataPoMapper’ in your configuration.

则需要在 controller 文件中添加@controller,在 service 文件中添加@service,在生成的 Mapper 文件中添加@Mapper

学习更多编程知识,请关注我的公众号:

[代码的路]

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 工程师
    +关注

    关注

    59

    文章

    1566

    浏览量

    68435
  • JAVA
    +关注

    关注

    19

    文章

    2956

    浏览量

    104534
  • 程序
    +关注

    关注

    116

    文章

    3773

    浏览量

    80830
  • 代码
    +关注

    关注

    30

    文章

    4741

    浏览量

    68325
  • mybatis
    +关注

    关注

    0

    文章

    58

    浏览量

    6696
收藏 人收藏

    评论

    相关推荐

    探索设计稿自动生成Flutter代码的技术方案

    作者:京东物流 冷先锋 近年来,随着人工智能和大模型技术的发展,设计稿(UI视图)自动生成代码的技术也在不断进步。本文将探讨几家知名企业在这一领域的探索和实践,包括美团、京东、微软等,以及一些常见
    的头像 发表于 11-08 10:09 800次阅读
    探索设计稿<b class='flag-5'>自动</b><b class='flag-5'>生成</b>Flutter<b class='flag-5'>代码</b>的技术方案

    如何自动生成verilog代码

    介绍几种自动生成verilog代码的方法。
    的头像 发表于 11-05 11:45 194次阅读
    如何<b class='flag-5'>自动</b><b class='flag-5'>生成</b>verilog<b class='flag-5'>代码</b>

    ISEDA首发!大语言模型生成代码到底好不好使

    在大模型席卷一切、赋能百业的浪潮里,“码农”也没能独善其身。各种代码自动生成的大模型,似乎描绘了一个人人都能像资深工程师一样写代码的美好未来。 但在这个理想成为现实之前,有一个不能回避
    发表于 05-16 13:41 295次阅读
    ISEDA首发!大语言模型<b class='flag-5'>生成</b>的<b class='flag-5'>代码</b>到底好不好使

    Simulink自动生成代码现阶段的学习笔记

    在车载控制器的软件开发中,simulink的身影几乎随处可见,主要是在控制算法和控制逻辑的实现。平时看同事点点点就生成代码了,看起来很简单,但是实际操作起来确各种磕磕绊绊。 下面记录了一下步骤作为现阶段的学习笔记吧。
    的头像 发表于 04-17 10:56 3675次阅读
    Simulink<b class='flag-5'>自动</b><b class='flag-5'>生成</b><b class='flag-5'>代码</b>现阶段的学习笔记

    .sct文件自动生成了一堆代码,并且有warning是什么原因导致的?

    .sct文件自动生成了一堆代码,并且有warning,手动改回去后编译,警告消失,重新编译又自动生成代码
    发表于 03-07 06:39

    在做simulink+tasking自动代码生成时,编译找不到底层文件是为什么?

    在做simulink+tasking自动代码生成时,编译找不到底层文件,将文件添加进去后,会出现RT或NRT等重复定义
    发表于 02-20 08:06

    鸿蒙ArkUI开发-实现增删Tab页签

    本文以浏览器中增加或删除页签为例,实现Tabs中页签的增删功能。
    的头像 发表于 01-29 18:43 1538次阅读
    鸿蒙ArkUI开发-实现<b class='flag-5'>增删</b>Tab页签

    单片机代码自动生成器程序

    单片机代码自动生成器是一种能够帮助开发人员快速生成单片机代码的工具。它利用了现代计算机技术和算法,能够根据用户提供的输入和需求,
    的头像 发表于 01-08 14:12 2889次阅读

    如何禁止vivado自动生成 bufg

    在Vivado中禁止自动生成BUFG(Buffered Clock Gate)可以通过以下步骤实现。 首先,让我们简要了解一下什么是BUFG。BUFG是一个时钟缓冲器,用于缓冲输入时钟信号,使其更稳
    的头像 发表于 01-05 14:31 1946次阅读

    mybatis中$和井号区别

    MyBatis是一个开源的Java持久层框架,它提供了许多强大的功能用于简化数据库操作。在MyBatis中,我们可以使用两种方式来动态生成SQL语句:$和#。 和#都可以用来替换SQL语句中的参数
    的头像 发表于 12-03 14:53 926次阅读

    mybatis框架的主要作用

    MyBatis框架是一种流行的Java持久化框架,主要用于简化数据库操作和管理。它提供了一种简洁的方式来访问数据库,并将SQL语句从Java代码中分离出来,从而提高了代码的可维护性和可读性
    的头像 发表于 12-03 14:49 1961次阅读

    mybatis和mybatisplus的区别

    MyBatisMyBatis Plus是两个非常受欢迎的Java持久层框架。这两个框架在设计和功能上有一些区别,下面我将详细介绍它们之间的差异以及各自的特点。 设计理念与目标: MyBatis是一
    的头像 发表于 12-03 11:53 2472次阅读

    mybatis接口动态代理原理

    ,从而实现数据库操作的动态生成和执行。接下来,我将详细介绍MyBatis接口动态代理的原理。 动态代理概念介绍 在Java语言中,动态代理是一种使用代理对象对目标对象的方法进行包装的技术。它允许在不修改目标对象的情况下,通过代理对象来增强目标对象的功能。动
    的头像 发表于 12-03 11:52 902次阅读

    mybatis的dao能重载吗

    MyBatis的DAO能否重载? 在MyBatis中,DAO是数据访问对象的缩写,用于执行与数据库交互的操作。MyBatis的DAO可以重载,即可以定义多个具有不同参数的相同方法名的方法,以满足
    的头像 发表于 12-03 11:51 1231次阅读

    代码生成:基于 AI 大模型的挑战与前景

    使用AI通用模型来完成代码生成这类非常具体的任务可能会带来问题。人工智能生成代码就像是陌生人的代码,它们可能并不符合你的
    的头像 发表于 11-26 08:05 710次阅读
    <b class='flag-5'>代码</b><b class='flag-5'>生成</b>:基于 AI 大模型的挑战与前景