使用MyBatis Generator从数据库自动生成Mapper和Po类

2022-05-06 19:31:36 浏览数 (1)

本博客主要讲解如何使用自己的MyBatis Generator工程,实现数据库表到Mapper已经Po类的映射。程序下载地址:MyBatis反转 1.项目结构

GeneratorSqlmap.java为程序入口,不需要修改任何东西,在此运行即可。 config为log4J日志的配置文件,用于输出程序的日志信息,便于查看程序运行情况和异常处理。(一般生成文件只需要几秒) lib为程序依赖的jar包。 generatorConfig.xml为核心文件,需要修改的配置项都在这。 2.使用方法 首先打开generatorConfig.xml 需要修改的地方有以下几处:所有需要修改的地方均加**标注 2.1 数据库连接信息

代码语言:javascript复制
<!--数据库连接的信息:驱动类、连接地址、用户名、密码 -->
		<jdbcConnection driverClass="com.mysql.jdbc.Driver"
			connectionURL="*jdbc:mysql://localhost:3306/mybatis*" 
			userId="*root*"
			password="*root*">

此处使用的是mysql,注释部分有oracle的配置,SQLServer请自行查找相关配置。 2.2配置生成PO类的位置(包名)

代码语言:javascript复制
<!-- targetProject:生成PO类的位置 -->
		<javaModelGenerator targetPackage="*com.geekfly.ssm.po*"
			targetProject=".src">
			<!-- enableSubPackages:是否让schema作为包的后缀 -->
			<property name="enableSubPackages" value="false" />
			<!-- 从数据库返回的值被清理前后的空格 -->
			<property name="trimStrings" value="true" />
		</javaModelGenerator>

2.3配置生成mapper文件的位置(包名)

代码语言:javascript复制
<!-- targetProject:mapper映射文件生成的位置 -->
		<sqlMapGenerator targetPackage="*com.geekfly.ssm.mapper*" 
			targetProject=".src">
			<!-- enableSubPackages:是否让schema作为包的后缀 -->
			<property name="enableSubPackages" value="false" />
		</sqlMapGenerator>

2.4 配置生成接口的位置

代码语言:javascript复制
<!-- targetPackage:mapper接口生成的位置 -->
		<javaClientGenerator type="XMLMAPPER"
			targetPackage="*com.geekfly.ssm.mapper*" 
			targetProject=".src">
			<!-- enableSubPackages:是否让schema作为包的后缀 -->
			<property name="enableSubPackages" value="false" />
		</javaClientGenerator>

由于我使用的是SSM框架的自动包扫描机制,所以Mapper.xml文件和接口在同一个包下,关于如何搭建SSM框架请查看: SSM框架的搭建(Spring SpringMVC Mybatis第一个项目的搭建) 2.5 配置需要生成的表名

代码语言:javascript复制
<!-- 指定数据库表 -->
		<table tableName="items"></table>
		<table tableName="orders"></table>
		<table tableName="orderdetail"></table>
		<table tableName="user"></table> 

可填写多个 如果需要指定字段类型

代码语言:javascript复制
<!-- 有些表的字段需要指定java类型
		 <table schema="" tableName="">
			<columnOverride column="" javaType="" />
		</table> -->

3.运行GeneratorSqlmap.java文件即可,待控制台输入日志信息完毕,在工程上F5刷新即可看到生成的包和文件,将这些文件粘贴到自己的web工程即可使用。

Mac OS下注意将映射文件地址的路径改为’/’!!!

0 人点赞