MyBatis Generator myeclipse 生成 mybatis

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,高可用系列 2核4GB
RDS MySQL Serverless 高可用系列,价值2615元额度,1个月
简介: 在下载好的插件包解压,找到generator-master\eclipse\UpdateSite目录下的feauresj和plugins放在myeclipse的相应目录下 以下为配置文件<?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE generatorConfigura



在下载好的插件包解压,找到generator-master\eclipse\UpdateSite目录下的feauresj和plugins放在myeclipse的相应目录下



以下为配置文件
<?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 >  
<!-- 设置mysql驱动路径 -->  
<classPathEntry location="F:/mysql-connector-java-5.1.18-bin.jar" />  
<!-- 此处指定生成针对MyBatis3的DAO -->  
  <context id="context1"  targetRuntime="MyBatis3">  
  <!-- jdbc连接信息 -->  
    <jdbcConnection driverClass="com.mysql.jdbc.Driver"    
    connectionURL="jdbc:mysql://localhost:3306/msite"   
    userId="root" password="123456" />  
    <!-- 生成vo对象 -->  
    <javaModelGenerator targetPackage="com.hlzt.bjcl.commons.model" targetProject="aa" />  
    <!-- 生成用于查询的Example对象 -->  
    <sqlMapGenerator targetPackage="com.hlzt.bjcl.commons.model" targetProject="aa" />  
    <!-- 生成DAO的类文件以及配置文件 -->  
    <javaClientGenerator targetPackage="com.hlzt.bjcl.commons.dao" targetProject="aa" type="XMLMAPPER" />  
    <!-- 想要生成的数据库表,自动化工具会根据该表的结构生成相应的vo对象 -->  
    <table schema="" tableName="order" 
       enableSelectByExample="true"  
       enableDeleteByExample="true"  
       enableCountByExample="true"  
       enableUpdateByExample="true">  
    </table>  
  </context>  
</generatorConfiguration>

从网上找的

<?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>
	<!-- 引入配置文件 -->
	<properties resource="init.properties"/>
	
	<!-- 指定数据连接驱动jar地址 -->
	<classPathEntry location="${classPath}" />
	
	<!-- 一个数据库一个context -->
	<context id="infoGuardian">
		<!-- 注释 -->
		<commentGenerator >
			<property name="suppressAllComments" value="false"/><!-- 是否取消注释 -->
			<property name="suppressDate" value="true" /> <!-- 是否生成注释代时间戳-->
		</commentGenerator>
		
		<!-- jdbc连接 -->
		<jdbcConnection driverClass="${jdbc_driver}"
			connectionURL="${jdbc_url}" userId="${jdbc_user}"
			password="${jdbc_password}" />
		
		<!-- 类型转换 -->
		<javaTypeResolver>
			<!-- 是否使用bigDecimal, false可自动转化以下类型(Long, Integer, Short, etc.) -->
			<property name="forceBigDecimals" value="false"/>
		</javaTypeResolver>
		
		<!-- 生成实体类地址 -->	
		<javaModelGenerator targetPackage="com.oop.eksp.user.model"
			targetProject="${project}" >
			<!-- 是否在当前路径下新加一层schema,eg:fase路径com.oop.eksp.user.model, true:com.oop.eksp.user.model.[schemaName] -->
			<property name="enableSubPackages" value="false"/>
			<!-- 是否针对string类型的字段在set的时候进行trim调用 -->
			<property name="trimStrings" value="true"/>
		</javaModelGenerator>
		
		<!-- 生成mapxml文件 -->
		<sqlMapGenerator targetPackage="com.oop.eksp.user.data"
			targetProject="${project}" >
			<!-- 是否在当前路径下新加一层schema,eg:fase路径com.oop.eksp.user.model, true:com.oop.eksp.user.model.[schemaName] -->
			<property name="enableSubPackages" value="false" />
		</sqlMapGenerator>
		
		<!-- 生成mapxml对应client,也就是接口dao -->	
		<javaClientGenerator targetPackage="com.oop.eksp.user.data"
			targetProject="${project}" type="XMLMAPPER" >
			<!-- 是否在当前路径下新加一层schema,eg:fase路径com.oop.eksp.user.model, true:com.oop.eksp.user.model.[schemaName] -->
			<property name="enableSubPackages" value="false" />
		</javaClientGenerator>
		
		<!-- 配置表信息 -->	
		<table schema="${jdbc_user}" tableName="s_user"
			domainObjectName="UserEntity" enableCountByExample="false"
			enableDeleteByExample="false" enableSelectByExample="false"
			enableUpdateByExample="false">
			<!-- schema即为数据库名 tableName为对应的数据库表 domainObjectName是要生成的实体类 enable*ByExample 
				是否生成 example类   -->
			
			<!-- 忽略列,不生成bean 字段 -->
			<ignoreColumn column="FRED" />
			<!-- 指定列的java数据类型 -->
	      	<columnOverride column="LONG_VARCHAR_FIELD" jdbcType="VARCHAR" />
		</table>

	</context>
</generatorConfiguration>


XML Parser Error on line 13: XML 文档结构必须从头至尾包含在同一个实体内。

貌似配置文件不能加注释!


Unexpected error while running MyBatis Generator. Exception getting JDBC Driver

查阅generator官方文档发现指定Jar包路径即可

  <classPathEntry location="D:/Dev/j2eeDev/jar/mysql-connector-java-5.1.24/mysql-connector-java-5.1.24/mysql-connector-java-5.1.24-bin.jar" />


eneration Warnings Occured Table configuration with catalog null, schema null, and table T_LOGIN did not resolve to any tables

忘了建表,数据库中没表当然解析不了.........创建表,解析成功,毫无压力
 


增加分页支持

首先在Example对象里面加入两个整形变量start和limit,start代表起始索引,limit代表数量,然后生成对应的get/set方法,使MyBatis在执行的时候能够获取相应的值.

第二部就是修改Mapper了,在selectByExample里面加入对Example对象中start和limit的判断,如果start和limit不同时为0,则自动在sql的最后加入分页条件,以下是需要加入的xml代码,记得加在selectByExample这个sql的最后面,也就是排序的后面

  1. <if test="start !=0 or limit!=0">  
  2.     limit #{start},#{limit}  
  3. </if>  
相关实践学习
每个IT人都想学的“Web应用上云经典架构”实战
本实验从Web应用上云这个最基本的、最普遍的需求出发,帮助IT从业者们通过“阿里云Web应用上云解决方案”,了解一个企业级Web应用上云的常见架构,了解如何构建一个高可用、可扩展的企业级应用架构。
MySQL数据库入门学习
本课程通过最流行的开源数据库MySQL带你了解数据库的世界。 &nbsp; 相关的阿里云产品:云数据库RDS MySQL 版 阿里云关系型数据库RDS(Relational Database Service)是一种稳定可靠、可弹性伸缩的在线数据库服务,提供容灾、备份、恢复、迁移等方面的全套解决方案,彻底解决数据库运维的烦恼。 了解产品详情:&nbsp;https://www.aliyun.com/product/rds/mysql&nbsp;
目录
相关文章
|
Java 数据库连接 Maven
使用mybatis插件generator生成实体类,dao层和mapper映射
使用mybatis插件generator生成实体类,dao层和mapper映射
1282 0
|
Oracle Java 数据库连接
使用Mybatis generator自动生成代码,仅限Oracle数据库
使用Mybatis generator自动生成代码,仅限Oracle数据库
|
XML Java 数据库连接
Mybatis使用generator逆向工程生成器生成entity、mapper、.xml模版类
今天将表建好了,但是一个一个的建实体类、Mapper接口、Mapper.xml文件就十分的麻烦,所以我就想到了MyBatis逆向,今天就操作一把!这里我们采用maven来进行操作。
670 0
|
5月前
|
Java 数据库连接 数据库
Spring boot 使用mybatis generator 自动生成代码插件
本文介绍了在Spring Boot项目中使用MyBatis Generator插件自动生成代码的详细步骤。首先创建一个新的Spring Boot项目,接着引入MyBatis Generator插件并配置`pom.xml`文件。然后删除默认的`application.properties`文件,创建`application.yml`进行相关配置,如设置Mapper路径和实体类包名。重点在于配置`generatorConfig.xml`文件,包括数据库驱动、连接信息、生成模型、映射文件及DAO的包名和位置。最后通过IDE配置运行插件生成代码,并在主类添加`@MapperScan`注解完成整合
931 1
Spring boot 使用mybatis generator 自动生成代码插件
|
Java 数据库连接 Maven
mybatis使用一:springboot整合mybatis、mybatis generator,使用逆向工程生成java代码。
这篇文章介绍了如何在Spring Boot项目中整合MyBatis和MyBatis Generator,使用逆向工程来自动生成Java代码,包括实体类、Mapper文件和Example文件,以提高开发效率。
577 2
mybatis使用一:springboot整合mybatis、mybatis generator,使用逆向工程生成java代码。
|
Java 数据库连接 Android开发
SSM框架——使用MyBatis Generator自动创建代码
SSM框架——使用MyBatis Generator自动创建代码
153 2
|
XML Oracle Java
mybatis generator(MyBatis的逆向工程)
mybatis generator(MyBatis的逆向工程)
242 0
mybatis generator(MyBatis的逆向工程)
|
Java 数据库连接 数据库
MyBatis逆向工程 Generator
MyBatis逆向工程 Generator
MyBatis逆向工程 Generator
|
Oracle Java 关系型数据库
一:MyBatis Generator 【SpringMvc+Spring+MyBatis+Maven整合学习笔记】
一:MyBatis Generator 【SpringMvc+Spring+MyBatis+Maven整合学习笔记】
236 0
一:MyBatis Generator 【SpringMvc+Spring+MyBatis+Maven整合学习笔记】
不是吧,你还在使用MyBatis Generator?试试这个工具吧
在企业软件开发过程中,大多数时间都是面向数据库表的增删改查开发。通过通用的增删改查代码生成器,可以有效的提高效率,降低成本;把有规则的重复性劳动让机器完成,解放开发人员。