SSM框架——使用MyBatis Generator自动创建代码

本文详细介绍了MyBatis生成器的配置方法,包括如何设置数据库驱动、连接信息、生成模型、映射文件和DAO的包名及位置,以及指定生成的表和实体类名。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

其中有mybatis框架的jar包,数据库驱动程序jar包以及MyBatis生成器jar包。其中的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>  
<!-- 数据库驱动-->  
    <classPathEntry  location="mysql-connector-java-5.1.25-bin.jar"/>  
    <context id="DB2Tables"  targetRuntime="MyBatis3">  
        <commentGenerator>  
            <property name="suppressDate" value="true"/>  
            <!-- 是否去除自动生成的注释 true:是 : false:-->  
            <property name="suppressAllComments" value="true"/>  
        </commentGenerator>  
        <!--数据库链接URL,用户名、密码 -->  
        <jdbcConnection driverClass="com.mysql.jdbc.Driver" connectionURL="jdbc:mysql://125.221.1.1/db_124" userId="dem" password="dem">  
        </jdbcConnection>  
        <javaTypeResolver>  
            <property name="forceBigDecimals" value="false"/>  
        </javaTypeResolver>  
        <!-- 生成模型的包名和位置-->  
        <javaModelGenerator targetPackage="test.domain" targetProject="src">  
            <property name="enableSubPackages" value="true"/>  
            <property name="trimStrings" value="true"/>  
        </javaModelGenerator>  
        <!-- 生成映射文件的包名和位置-->  
        <sqlMapGenerator targetPackage="test.mapping" targetProject="src">  
            <property name="enableSubPackages" value="true"/>  
        </sqlMapGenerator>  
        <!-- 生成DAO的包名和位置-->  
        <javaClientGenerator type="XMLMAPPER" targetPackage="test.IDao" targetProject="src">  
            <property name="enableSubPackages" value="true"/>  
        </javaClientGenerator>  
        <!-- 要生成的表 tableName是数据库中的表名或视图名 domainObjectName是实体类名-->  
        <table tableName="user_info_t" domainObjectName="User" enableCountByExample="false" enableUpdateByExample="false" enableDeleteByExample="false" enableSelectByExample="false" selectByExampleQueryId="false"></table>
    </context>  
</generatorConfiguration>  

原文出自:https://blog.youkuaiyun.com/zhshulin/article/details/23912615

### 如何在 VSCode使用 MyBatis-Plus 生成代码 要在 Visual Studio Code (VSCode) 中利用 MyBatis-Plus 的功能来生成代码,可以借助一些辅助工具或插件完成此过程。以下是具体方法: #### 使用 MyBatis-Plus 官方代码生成MyBatis-Plus 提供了一个内置的代码生成器模块 `mybatis-plus-generator`,可以通过 Java 编写配置类来自动生成所需的 Mapper 接口、实体类以及对应的 XML 文件[^1]。 以下是一个简单的代码生成器实现示例: ```java import com.baomidou.mybatisplus.generator.FastAutoGenerator; import com.baomidou.mybatisplus.generator.config.OutputFile; import java.util.Collections; public class CodeGenerator { public static void main(String[] args) { FastAutoGenerator.create("jdbc:mysql://localhost:3306/your_database", "username", "password") .globalConfig(builder -> builder.author("Your Name").fileOverride().outputDir("D:/generated_code")) .packageConfig(builder -> builder.parent("com.example").moduleName(null).pathInfo(Collections.singletonMap(OutputFile.mapperXml, "D:/generated_code/xml"))) .strategyConfig(builder -> builder.addInclude("table_name") // 需要生成哪些表 .entityBuilder() .enableLombok() // 开启 Lombok 注解支持 .controllerBuilder() .enableRestStyle()) // RESTful 风格控制器 .templateEngine(new FreemarkerTemplateEngine()) .execute(); } } ``` 上述代码通过指定数据库连接信息、作者名、输出目录等参数自定义生成逻辑,并最终调用 `.execute()` 方法执行生成任务。 #### 结合第三方工具增强体验 如果希望更便捷地操作而无需手动编写复杂的配置文件,则可考虑引入外部项目如 **SpringBootCodeGenerator** 来简化流程[^2]。该库不仅限于 SQL 转换为 Java 实体的功能,还扩展到了前端 Vue.js 组件甚至更多领域内的自动化脚本创建服务。 对于集成到 VSCode 当中的场景来说,虽然官方并没有提供专用扩展程序,但是用户依然能够依赖命令行或者 Task Runner 插件间接运行这些基于 JVM 构建的任务。 另外需要注意的是,在实际开发过程中可能还需要额外调整 Spring Boot 应用程序上下文中关于 MyBatis-Plus 的初始化设置部分。例如按照特定需求修改默认行为时可以在全局配置类里加入如下片段[^3]: ```java @Configuration @MapperScan(basePackages = {"com.yourproject.mapper"}) public class MyBatisPlusConfig { @Bean public PaginationInterceptor paginationInterceptor(){ return new PaginationInterceptor(); } } ``` 以上展示了如何配置分页拦截器实例对象并注册至容器内以便后续业务层调用分页查询接口等功能点的支持情况说明文档链接地址已标注清楚便于查阅相关内容细节之处。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值