mybatis-generator配置

标签: mybatis generator | 发表时间:2014-11-15 21:19 | 作者:ZXY_920823
出处:http://www.iteye.com
新项目要用mybatis,为了开发效率和方便开发,研究了mybatis-generate,在maven环境下,通过插件的形式配置,废话不多说。
pom文件:
<!-- MyBatis代码生成 -->
	<plugin>  
                <groupId>org.mybatis.generator</groupId>  
                <artifactId>mybatis-generator-maven-plugin</artifactId>  
                <version>1.3.2</version>  
                <executions>  
                    <execution>  
                        <id>Generate MyBatis Artifacts</id>  
                        <goals>  
                            <goal>generate</goal>  
                        </goals>  
                    </execution>  
                </executions>  
                <configuration>  
                    <verbose>true</verbose>  
                    <overwrite>true</overwrite>  
                </configuration>  
                <dependencies>  
                    <dependency>  
                      	<groupId>com.microsoft.sqlserver</groupId>
                        <artifactId>sqlserver4</artifactId>
			<version>4.0</version>
                    </dependency>  
                    <dependency>  
                        <groupId>org.mybatis.generator</groupId>  
                        <artifactId>mybatis-generator-core</artifactId>  
                        <version>1.3.2</version>  
                    </dependency>  
                    <dependency>  
                        <groupId>org.mybatis</groupId>  
                        <artifactId>mybatis</artifactId>  
                        <version>3.2.8</version>  
                    </dependency>  
                </dependencies>  
           </plugin>  


   由于M2e不支持这个goal,会报错,忽略这个goal就好了,具体原因请看:

https://www.eclipse.org/m2e/documentation/m2e-execution-not-covered.html

解决办法把下面这段配置添加到与plugins平级目录中即可解决:
	<pluginManagement>
	<plugins>
		<plugin>
			<groupId>org.eclipse.m2e</groupId>
			<artifactId>lifecycle-mapping</artifactId>
			<version>1.0.0</version>
			<configuration>
				<lifecycleMappingMetadata>
					<pluginExecutions>
						<pluginExecution>
							<pluginExecutionFilter>
								<groupId>org.mybatis.generator</groupId>
								<artifactId>mybatis-generator-maven-plugin</artifactId>
								<versionRange>[1.3.2,)</versionRange>
								<goals>
									<goal>generate</goal>
								</goals>
							</pluginExecutionFilter>
							<action>
								<ignore />
							</action>
						</pluginExecution>
					</pluginExecutions>
				</lifecycleMappingMetadata>
			</configuration>
		</plugin>
	</plugins>
</pluginManagement>


mybatis-generator-maven-plugin会默认读取src/main/resources的generatorConfig.xml文件,
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>
	<context id="sqlserver" targetRuntime="MyBatis3">
		<!-- 抑制警告 -->
		<property name="suppressTypeWarnings" value="true" />
		
		<!-- generate entity时,生成hashcode和equals方法 -->
		<plugin type="org.mybatis.generator.plugins.EqualsHashCodePlugin" />
		<!-- generate entity时,生成serialVersionUID -->
		<plugin type="org.mybatis.generator.plugins.SerializablePlugin" />
	    <!-- 这个插件只会增加字符串字段映射到一个JDBC字符的方法 -->
	    <plugin type="org.mybatis.generator.plugins.CaseInsensitiveLikePlugin" />
        <!-- genenat entity时,生成toString -->
         <plugin type="org.mybatis.generator.plugins.ToStringPlugin" />

	<!-- 抑制生成代码的注释 -->
		<commentGenerator>
			<property name="suppressAllComments" value="true" />
		</commentGenerator>

		<jdbcConnection driverClass="com.microsoft.sqlserver.jdbc.SQLServerDriver"
			connectionURL="jdbc:sqlserver://localhost:1433;databaseName=spider"
			userId="sa" password="123">
		</jdbcConnection>

		<javaTypeResolver>
			<property name="forceBigDecimals" value="false" />
		</javaTypeResolver>

		<!-- generate Model -->
		<javaModelGenerator targetPackage="com.spider.tickets.user.entity"
			targetProject="src/main/java">
			<property name="enableSubPackages" value="true" />
			<property name="trimStrings" value="true" />
		</javaModelGenerator>

		<!-- generate xml -->
		<sqlMapGenerator targetPackage="mybatis"
			targetProject="src/main/resources">
			<property name="enableSubPackages" value="true" />
		</sqlMapGenerator>

		<!--生成dao接口的配置 -->
		<javaClientGenerator type="XMLMAPPER"
			targetPackage="com.spider.tickets.user.dao" targetProject="src/main/java">
			<property name="enableSubPackages" value="true" />
		</javaClientGenerator>
		<table tableName="ss_user" domainObjectName="User"  enableCountByExample="false" enableSelectByExample="false" enableDeleteByExample="false" enableUpdateByExample="false" selectByExampleQueryId="false"  />
		<table tableName="ss_task" domainObjectName="Task" enableCountByExample="false" enableSelectByExample="false" enableDeleteByExample="false" enableUpdateByExample="false" selectByExampleQueryId="false"  />
	</context>
</generatorConfiguration>


通过命令:mybatis-generator:generate 即可生成我们所需的文件。


已有 0 人发表留言,猛击->> 这里<<-参与讨论


ITeye推荐



相关 [mybatis generator] 推荐:

mybatis-generator配置

- - 开源软件 - ITeye博客
新项目要用mybatis,为了开发效率和方便开发,研究了mybatis-generate,在maven环境下,通过插件的形式配置,废话不多说. .    由于M2e不支持这个goal,会报错,忽略这个goal就好了,具体原因请看:. 解决办法把下面这段配置添加到与plugins平级目录中即可解决:.

使用Mybatis-Generator自动生成Dao、Model、Mapping相关文件 - Balla_兔子

- - 博客园_首页
  Mybatis属于半自动ORM,在使用这个框架中,工作量最大的就是书写Mapping的映射文件,由于手动书写很容易出错,我们可以利用Mybatis-Generator来帮我们自动生成文件. 关于Mybatis-Generator的下载可以到这个地址: https://github.com/mybatis/generator/releases.

HibernateTemplate及generator用法(转)

- - CSDN博客架构设计推荐文章
在ssh或ssh2中,对数据库进行操作的DAO,都可以通过继承 HibernateDaoSupport来实现对数据库的操作.. 继承后的实现方式有两种:. getHibernateTemplate().B();或getHibernateTemplate().getSessionFactory().openSession().C();.

Spring+MyBatis实践——MyBatis访问数据库

- - 开源软件 - ITeye博客
    在http://dufengx201406163237.iteye.com/blog/2102054中描述了工程的配置,在此记录一下如何使用MyBatis访问数据库;. . .

ibatis和mybatis区别

- - SQL - 编程语言 - ITeye博客
简介: 本文主要讲述了 iBatis 2.x 和 MyBatis 3.0.x 的区别,以及从 iBatis 向 MyBatis 移植时需要注意的地方. 通过对本文的学习,读者基本能够了解 MyBatis 有哪些方面的改进,并能够顺利使用 MyBatis 进行开发. 本文更适合有 iBatis 基础的开发人员阅读.

iBatis与MyBatis区别

- - 非技术 - ITeye博客
iBatis 框架的主要优势:. 1、iBatis 封装了绝大多数的 JDBC 样板代码,使得开发者只需关注 SQL 本身,而不需要花费精力去处理例如注册驱动,创建 Connection,以及确保关闭 Connection 这样繁杂的代码. 2、从 iBatis 到 MyBatis,不只是名称上的变化,MyBatis 提供了更为强大的功能,同时并没有损失其易用性,相反,在很多地方都借助于 JDK 的泛型和注解特性进行了简化.

mybatis oracle mysql 批量插入

- - Oracle - 数据库 - ITeye博客
一、oracle的批量插入方式. 二、mysql的批量插入方式. ORA-00918:未明确定义列. 如果不设置列名,那么#{item.senderPhone}的值就是默认列名,那么就有很多概率会产生列名重复,而产生异常. (两个列的值完全可能一样). #{item.receiveTime} 值为null时,必须指定转换类型.

MyBatis的动态SQL详解

- - 编程语言 - ITeye博客
基础部分可以查看我的另一篇博客: http://haohaoxuexi.iteye.com/blog/1333271. MyBatis的动态SQL是基于OGNL表达式的,它可以帮助我们方便的在SQL语句中实现某些逻辑. MyBatis中用于实现动态SQL的元素主要有:. if就是简单的条件判断,利用if语句我们可以实现某些简单的条件选择.

Mybatis查询延迟加载

- - Elim的个人空间
Mybatis 查询延迟加载. 1.1        启用延迟加载. 1.2        分析.        Mybatis的延迟加载是针对嵌套查询而言的,是指在进行查询的时候先只查询最外层的SQL,对于内层SQL将在需要使用的时候才查询出来. Mybatis的延迟加载默认是关闭的,即默认是一次就将所有的嵌套SQL一并查了将对象所有的信息都查询出来.

spring +mybatis读写分离

- - 编程语言 - ITeye博客
一、配置定义数据库连接属性. .     .     .     .     .         . .