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();.

GitHub - smartnews/jpa-entity-generator: Lombok-wired JPA entity source code generator, Gradle and Maven supported.

- -
If you need to make sure if your latest code works with sample project or your existing projects, run the following command to publish the latest build to the local Maven repository..

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一并查了将对象所有的信息都查询出来.