mybatis自动生成实体类与mapper文件

使用Mybatis生成工具自动生成实体类和对应的mapper映射文件以及接口文件 1.相关的jar包Mybatis-Generator的下载可以到这个地址: https://github.com/mybatis/generator/releases 使用官方网站的mapper自动生成工具mybatis-generator-core-1.3.2来生成po类和mapper映射文件。作用:mybatis官方提供逆向工程,可以使用它通过数据库中的表来自动生成Mapper接口和映射文件 阅读详情

一、新建maven项目

导入依赖

            

                <dependency>
			<groupId>org.mybatis.generator</groupId>
			<artifactId>mybatis-generator-core</artifactId>
			<version>1.3.6</version>
		</dependency>

		
		<dependency>
			<groupId>mysql</groupId>
			<artifactId>mysql-connector-java</artifactId>
			<version>5.1.37</version>
		</dependency>

二、创建generatorConfig.xml

<?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>
    <!--导入属性配置-->

    <!--指定特定数据库的jdbc驱动jar包的位置-->
    <!-- <classPathEntry location="D:/mysql-connector-java-5.1.40-bin.jar"/> -->

    <context id="default" targetRuntime="MyBatis3">

        <!-- optional,旨在创建class时,对注释进行控制 -->
        <commentGenerator>
            <property name="suppressDate" value="true"/>
            <property name="suppressAllComments" value="true"/>
        </commentGenerator>

        <!--jdbc的数据库连接 -->
        <jdbcConnection
                driverClass="com.mysql.jdbc.Driver"
                connectionURL="jdbc:mysql://127.0.0.1:3306/springBoot01?useSSL=false"
                userId="root"
                password="yuwen">
        </jdbcConnection>


        <!-- 非必需,类型处理器,在数据库类型和java类型之间的转换控制-->
        <javaTypeResolver>
            <property name="forceBigDecimals" value="false"/>
        </javaTypeResolver>


        <!-- Model模型生成器,用来生成含有主键key的类,记录类 以及查询Example类
            targetPackage     指定生成的model生成所在的包名
            targetProject     指定在该项目下所在的路径
        -->
        <!--<javaModelGenerator targetPackage="com.wangpu.model" targetProject=".\src\main\java">-->
        <javaModelGenerator targetPackage="cn.pojo" targetProject="E:\代码\springBoot01 Maven Webapp\src\mian\java">
            <!-- 是否允许子包,即targetPackage.schemaName.tableName -->
            <property name="enableSubPackages" value="true"/>
            <!-- 是否对model添加 构造函数 -->
            <property name="constructorBased" value="true"/>
            <!-- 是否对类CHAR类型的列的数据进行trim操作 -->
            <property name="trimStrings" value="true"/>
            <!-- 建立的Model对象是否 不可改变  即生成的Model对象不会有 setter方法,只有构造方法 -->
            <property name="immutable" value="false"/>
        </javaModelGenerator>

        <!--mapper映射文件生成所在的目录 为每一个数据库的表生成对应的SqlMap文件 -->
        <!--<sqlMapGenerator targetPackage="mappers" targetProject=".\src\main\resources">-->
        <sqlMapGenerator targetPackage="cn.dao" targetProject="E:\代码\springBoot01 Maven Webapp\src\mian\java">
            <property name="enableSubPackages" value="false"/>
        </sqlMapGenerator>

        <!-- targetPackage:mapper接口dao生成的位置 -->
        <!--<javaClientGenerator type="XMLMAPPER" targetPackage="com.wangpu.dao" targetProject=".\src\main\java">-->
        <javaClientGenerator type="XMLMAPPER" targetPackage="cn.dao" targetProject="E:\代码\springBoot01 Maven Webapp\src\mian\java">
            <!-- enableSubPackages:是否让schema作为包的后缀 -->
            <property name="enableSubPackages" value="true" />
        </javaClientGenerator>


        <table tableName="user" domainObjectName="User" enableCountByExample="false" enableUpdateByExample="false" enableDeleteByExample="false" enableSelectByExample="false" selectByExampleQueryId="false"></table>
        <table tableName="book" domainObjectName="Book" enableCountByExample="false" enableUpdateByExample="false" enableDeleteByExample="false" enableSelectByExample="false" selectByExampleQueryId="false"></table>

        <!-- geelynote mybatis插件的搭建 -->
    </context>
</generatorConfiguration>

三、启动方式

1.新建启动类,运行main方法

package cn.yu.autojavabean;

import java.io.File;
import java.io.IOException;
import java.sql.SQLException;
import java.util.ArrayList;
import java.util.List;
import org.mybatis.generator.api.MyBatisGenerator;
import org.mybatis.generator.config.Configuration;
import org.mybatis.generator.config.xml.ConfigurationParser;
import org.mybatis.generator.exception.InvalidConfigurationException;
import org.mybatis.generator.exception.XMLParserException;
import org.mybatis.generator.internal.DefaultShellCallback;

import org.mybatis.generator.api.ShellRunner;

public class GeneratorSqlmap {
	public void generator() throws Exception {
		List<String> warnings = new ArrayList<String>();
		boolean overwrite = true;
		// 加载配置文件
		File configFile = new File("src\\main\\resources\\generatorConfig.xml");
		ConfigurationParser cp = new ConfigurationParser(warnings);
		Configuration config = cp.parseConfiguration(configFile);
		DefaultShellCallback callback = new DefaultShellCallback(overwrite);
		MyBatisGenerator myBatisGenerator = new MyBatisGenerator(config, callback, warnings);
		myBatisGenerator.generate(null);
	}

	public static void main(String[] args) throws Exception {
		try {
			GeneratorSqlmap generatorSqlmap = new GeneratorSqlmap();
			generatorSqlmap.generator();
		} catch (Exception e) {
			e.printStackTrace();
		}
	}
}

2.

在generatorConfig.xml文件夹位置,按住shift,打开命令窗口

输入

java -jar mybatis-generator-core-1.3.0.jar -configfile ../src/main/resource/config.xml -overwrite 

若是包mybatsi-generator-core没有的错,把这个jar包拷贝到这个文件下。生成之后删除即可。

四、测试

运行第三步的main方法,刷新项目即可。

五、遇到的bug

1.mysql-connector-java这个项目的5.6.06版本貌似不行,报一个时区不正确的错误。更换其他版本即可

2.文件找不到错误。这个不用说,自己寻找路径,注意"/"与"\"的区别

3.运行成功,却没有文件生成?第一:看生成到的targetPackage是否正确。第二:targetProject是否正确。本人曾在第二点上纠结了一天,最后换了去全路径成功!特别是spring boot项目,务必全路径

 

使用mybatis-generator自动生成实体类,接口实现类和Mapper映射配置文件 Mybatis-generator工具利用Java实体类和数据库表的映射关系,将实体类的属性和数据表中列名一一对应,运行后自动生成model,DAO和Mapper.xml,对配置Mybatis框架,非常方便实用。 阅读详情

相关推荐

mybatis_plus_demo自动生成实体类,mapper,service,controller

使用mybatis_plus自动生成mapper,service,controller的代码,单表的crud全都自动生成

Springboot mybatis generate 自动生成实体类和Mapper

运行MyBatisGeneratorApp类即可实现自动生成实体类、mapper接口、mapper.xml

LSW1737554365的博客 4807

FPGA波束形成:从算法到硬件的艺术之旅

本文深入探讨了FPGA在波束形成技术中的应用,从算法原理到Verilog硬件实现的全过程。文章详细分析了FPGA并行处理、低延迟和可重构特性如何优化波束形成系统性能,并提供了Verilog关键模块代码示例和资源优化策略,为工程师实现高效FPGA波束形成解决方案提供实用指导。

tea88的博客 1047

MyBatis自动生成实体类(逆向工程)

mybatis自动生成代码工具(逆向工程) MyBatis自动生成实体类(逆向工程) MyBatis属于一种半自动的ORM框架,它需要我们自己编写sql语句和映射文件,但是编写映射文件和sql语句很容易出错,所以mybatis官方提供了Generator生成器,自动生成DAO接口。实体类和Mapping。这个生成器是根据单表自动生成mybatis执行所需要的代码,因此,首先得先创建数据库表,然后再自动生成代码。 ————————默认已经设计好数据库和表(如果未设计数据和表请先设计数据库和表) 1.通过代码生

lijiaxingdadas的博客 4235

MTK Linux DRM分析(八)- KMS drm_crtc.c

CRTC 在 Linux DRM 子系统中是显示控制的核心,负责时序生成、模式设置和管线的调度。理解其工作原理和 API 对于进行底层图形开发、调试显示问题或 simply understanding how your graphics stack works 都至关重要。

iTom1900 1350

STM32F103C8T6实战:从零搭建三相SPWM逆变器(附MATLAB仿真、PCB、源码)

本文详细介绍了如何使用STM32F103C8T6单片机从零搭建三相SPWM逆变器,涵盖硬件选型、PCB设计、SPWM算法实现及MATLAB仿真。项目提供完整的工程文件,包括源码、PCB设计和仿真模型,适合电子工程师和学生进行实践学习。通过本教程,读者可以掌握逆变器设计的核心技术和调试方法。

weixin_30458043的博客 455

Mybatis-generator自动生成实体对象

现在使用这种方式配置起来还是非常麻烦,建议使用idea插件 MybatisCodeHelper实现数据库生成实体对象,mapper文件,也可以实现实体对象生成sql语句。

拾一二的博客 2375

9、硬件工程师笔试面试知识器件篇——三极管(2025版本)

本文全面介绍了三极管的基础知识与应用,包括其结构、类型、工作原理、工作状态、功能、应用场景及特性参数。详细探讨了三极管在信号放大、无线通信、音频设备及医疗设备中的具体应用,并深入分析了设计放大电路时如何平衡增益与噪声、优化偏置电路以提高稳定性、使用负反馈改善性能等关键问题。此外,文章还涵盖了高频电路设计、温度补偿策略、电磁干扰防护等实用内容,为硬件工程师提供了全面的技术参考和设计指导。

XU157303764的博客 7314

SpringBoot整合MybatisPlus 自动生成controller、mapper、entity、service

java自动生成controller、mapper、entity、service,相对应的文件配置可自行修改

暖风 3276

Whisper 模型在嘈杂环境中的表现:降噪与增强技术

本报告系统分析了OpenAI Whisper模型在嘈杂环境中的表现机制,重点揭示其内在降噪能力的技术边界,并结合语音增强(SE)、时频分析等前沿技术提出优化方案。内容覆盖从基础概念(如噪声类型对ASR的影响)到理论框架(模型架构与数学形式化),再到实际应用(端到端部署策略)的全链路分析,同时通过案例研究与可视化工具(如梅尔频谱对比图)降低复杂概念的认知门槛。核心结论指出:Whisper的多语言预训练虽提升了泛化性,但在低信噪比(SNR<5dB)场景下需结合前端降噪或联合训练技术以突破性能瓶颈。

AI 原生应用开发的博客 489

Ut接口原理及 VoLTE 补充业务自管理信令流程(GBA 引导认证+业务访问认证+ VoLTE 补充业务自管理)

2. Ut 接口及 VoLTE 业务子管理概述 2.1 UT 接口 —— VoLTE 终端补充业务配置 2.2终端通过 Ut 接口完成 VoLTE 补充业务自管理举例 2.3什么是 GBA 和 GAA 架构 2.4为什么要引入 GBA 架构认证及 BSF 网元 2.5UE(终端) 接口相关网元及功能 2.6GBA 架构流程概述 3. Ut 接口业务自管理信令流程 3.1 补充业务自管理及本文主要参考以下规范 3.2 Ut 接口业务自管理信令流程:查询补充业务 3.2.1 UE获

原来45的博客 1258

使用mybatisplus一键自动生成entity、mapper、service、controller层

先用idea创建一个Springboot项目。

weixin_68193389的博客 2627

2021-09-29 每天几个LCEDA小知识——如何交叉选择并阵列放置元器件

立创EDA专业版之交叉选择并阵列放置元器件????交叉选择????阵列放置 ????交叉选择 在原理图界面,先框选需要交叉选择的元器件对象,右键,选择交叉选择(如果熟练之后,直接选择元器件,快捷键Shift+X)。 完成上述操作之后,可以看到自动跳转到PCB绘图界面,并自动选定PCB中相关的元器件,接下来不要取消选择的状态,在相关元器件被选中的情况下,即可开展阵列放置,将这些元器件都放在一个区域,方便PCB画线前的布局工作。 ????阵列放置 在布局菜单栏中,选择分布,选择阵列分布, 在弹出的对话框

l64481000的博客 1465

Mybatis自动生成mapper、实体类及mapper xml文件

项目中用的mybatis,依据数据库表手工写java实体类、mapper接口及mapper xml文件,是一件很郁闷的乏味的事情,而且容易出错,下面记录了一下本人用工具类自动生成这些文件的过程及碰到的坑。 1. maven pom.xml 配置(只列出需要用到的2个核心依赖库) <!-- jdbc driver --> <dependency> <groupId>org.postgresql</groupId> <artifactId&...

hello_junz的专栏 7455

本地部署AI应用:基于Google Gemini的banana-prompt快速上手指南

AI应用开发的核心在于将大模型能力集成到实际场景中,其原理是通过API调用将用户输入转化为模型可理解的指令,再由模型生成响应。这一技术价值在于降低AI应用开发门槛,实现数据本地化处理与隐私保护。在工程实践中,开发者常面临环境配置复杂、API集成繁琐等挑战。本文聚焦于使用banana-prompt工具包,通过TypeScript技术栈和npm包管理,快速在Windows本地部署基于Google Gemini API的AI应用。该方案特别适用于ai-prompts提示词工程和content-creation内容

weixin_27188815的博客 318

pscad IEEE标准系统搭建说明

pscad IEEE标准系统搭建说明,包含典型的IEEE 9节点、14节点、30节点、39节点和118节点系统。内含标准测试系统的原始数据和潮流结果。

MyBatis自动生成实体类和mapper文件工具包

MyBatis自动生成实体类和mapper文件工具包 开发中我们建好数据库后还要写它的实体类,set/get方法,以及mapper.java和mapper.xml文件 资源文件在 [ 我的资源 ](注意:是标题为“generator-Mybatis快速生成实体类和mapper文件” 的,最前面一个有些小问题,csdn不能删除,所以再上传了一个)里面,有需要大家可以下载,里面包含了详细的注释,...

慌途L 1333

温度PID控制PLC程序

温度PID稳定控制程序,适用于欧姆龙PLC,对其他PLC也具有很大参考价值

mysql 自动生成mapper_Mybatis自动生成实体类和Mapper文件

Mybatis自动生成实体类和Mapper文件我们在做项目时,少不了用到Mybatis框架,更少不了创建实体类和书写sql语句,当数据库表很多时,手动创建会耗时耗力,做着大量重复性的工作,很让人头疼,下面我将介绍如何配置利用Mybatis插件自动创建生成。在pom.xml中添加如下依赖:mysqlmysql-connector-java8.0.11org.mybatis.spring.bootmy...

weixin_34026053的博客 479

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

MyBatis逆向工程,自动生成dao、实体类、mapper文件

利用mybatis generator 自动生成生成dao、实体类、mapper文件基本步骤:(方法有多种,这里的方法是脱离项目工程,利用命令行建立文件。后续可以按需复制进工程)1、下载相应工具2、依据相应数据库导入相应数据库连接jar包3、编写generatorConfig.xml文件4、命令行模式,进入lib文件夹5、输入:java -jar mybatis-generator-core-1....

myblogzz的博客 7538

Mybatis 自动生成实体类,dao层接口和mapper.xml文件

Mybatis 自动生成实体类,dao层接口和mapper.xml文件。 1、在idea中建立一个maven的工程,工程目录为: 2、在pom.xml添加以下代码 <?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xs...

qq_43732691的博客 1268

MyBatis使用generator插件,自动生成实体类、Dao层、Mapper文件

目录 一.在配置文件下配置扫描所有配置文件以及引入插件jar包 二.创建generatorConfig.xml文件,这里有些地方需要根据具体项目改 三.自动生成(自动生成之后,在dao层的Mapper文件上添加@Mapper注解,注册成为bean让spring管理) 这个插件真的是太方便了,点击一下即可自动生成... 一.在配置文件下配置扫描所有配置文件以及引入插件jar包 <build> <plugins> <plugin

拾信 762

mybatis-generator 自动生成postgresql,pojo实体类及mapper.xml文件

第一部 generatorConfig.xml resources目录下 <?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE generatorConfiguration PUBLIC "-//mybatis.org//DTD MyBatis Generator Configuration 1.0//EN" "...

taiguolaotu的博客 4538

MyBatis Generator自动生成实体类、Mapper、XML文件

注意:mybatis generator plugin处也需要添加依赖,否则会报错。tip:关闭生成example实际运行并未起作用......运行mybatis-generator:generate。运行maven clean 和install验证。

wjhanye11的博客 432

Mybatis-Generator逆向工程自动生成entity实体类,mapper文件,

新建xml文件generatorConfig.xml generatorConfig.xml代码 &lt;?xml version="1.0" encoding="UTF-8"?&gt; &lt;!DOCTYPE generatorConfiguration PUBLIC "-//mybatis.org//DTD MyBatis Generator Configuration 1...

qq_41373328的博客 658

Mybatis自动生成mapper.xml文件,实体类

Mybtais自动生成sql语句的功能还是挺方便的,今天就来写一篇文章记录一下 1、在pom.xml文件中添加依赖 <plugin> <!--Mybatis-generator插件,用于自动生成Mapper和POJO--> <groupId>org.mybatis.generator</groupId> <artifactId>mybatis-gene

稚彦的博客 2772
上一篇: Nginx+Tomcat+Redis负载均衡Session共享实现
下一篇: String,StringBuffer与StringBuilder的区别??
Yuwen_forJava
博客等级 码龄9年 28粉丝 90原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值