MyBatis 是一款优秀的持久层框架,它支持定制化 SQL、存储过程以及高级映射。MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集。MyBatis 可以使用简单的 XML 或注解来配置和映射原生信息,将接口和 Java 的 POJOs(Plain Ordinary Java Object,普通的 Java对象)映射成数据库中的记录。
两种形式:
XML方式 type="XMLMAPPER"
注解方式 type="ANNOTATEDMAPPER"
vxml方式
1.1 pom.xml里添加maven插件
- <!-- mybatis.generator start-->
- <plugin>
- <groupId>org.mybatis.generator</groupId>
- <artifactId>mybatis-generator-maven-plugin</artifactId>
- <version>1.3.5</version>
- <dependencies>
- <dependency>
- <groupId> mysql</groupId>
- <artifactId> mysql-connector-java</artifactId>
- <version> 5.1.39</version>
- </dependency>
- <dependency>
- <groupId>org.mybatis.generator</groupId>
- <artifactId>mybatis-generator-core</artifactId>
- <version>1.3.5</version>
- </dependency>
- </dependencies>
- <executions>
- <execution>
- <id>Generate MyBatis Artifacts</id>
- <phase>package</phase>
- <goals>
- <goal>generate</goal>
- </goals>
- </execution>
- </executions>
- <configuration>
- <!--允许移动生成的文件 -->
- <verbose>true</verbose>
- <!-- 是否覆盖 -->
- <overwrite>true</overwrite>
- <!-- 自动生成的配置 -->
- <configurationFile>
- src/main/resources/mybatis-generator/mybatis-generator.xml</configurationFile>
- </configuration>
- </plugin>
- <!-- mybatis.generator end-->

1.2 resources下创建mybatis-generator.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="DB2Tables" targetRuntime="MyBatis3">
- <commentGenerator>
- <property name="suppressDate" value="true"/>
- <property name="suppressAllComments" value="true"/>
- </commentGenerator>
- <!--数据库链接地址账号密码-->
- <jdbcConnection driverClass="com.mysql.jdbc.Driver" connectionURL="jdbc:mysql://localhost:3306/mytest" userId="toutou" password="*********">
- </jdbcConnection>
- <javaTypeResolver>
- <property name="forceBigDecimals" value="false"/>
- </javaTypeResolver>
- <javaModelGenerator targetPackage="com.demo.pojo"
- targetProject="src/main/java">
- <property name="enableSubPackages" value="false" />
- <property name="trimStrings" value="true" />
- </javaModelGenerator>
-
- <sqlMapGenerator targetPackage="mapper"
- targetProject="src/main/resources">
- <property name="enableSubPackages" value="false" />
- </sqlMapGenerator>
-
- <javaClientGenerator targetPackage="com.demo.dao"
- targetProject="src/main/java"
- type="XMLMAPPER">
- <property name="enableSubPackages" value="false" />
- </javaClientGenerator>
- <!--生成对应表及类名-->
- <table tableName="userdetails" domainObjectName="UserDetails" enableCountByExample="false" enableUpdateByExample="false" enableDeleteByExample="false" enableSelectByExample="false" selectByExampleQueryId="false"></table>
- </context>
- </generatorConfiguration>

1.3 在maven project下双击mybatis-generator插件下的mybatis-generator:generate

1.4 更新application.properties

配置文件版与注解版相比,要稍微复杂一点,两者的区别仅为mapper层处理的处理方式不一样,因此实体层与控制层,数据库等均相同。
v注解方式
在之前的文章《SpringBoot(一)详解intellij idea搭建SpringBoot》中,我们用的就是mybatis注解版的,这里就不多说了。
关于注解版更多详细demo可以看MyBatis 3 Annotation Example with @Select, @Insert, @Update and @Delete。
mybatis generator ANNOTATEDMAPPER和XMLMAPPER,用mybatis generator注解方式,主要是将javaClientGenerator中的type属性更换为type="ANNOTATEDMAPPER"
。
v博客总结
注解版更简洁也更清晰,去掉了xml文件,是推荐使用的。尤其是结合springboot,springboot本身相对于传统springmvc项目来说,就是去配置话,让项目更简洁。
作 者:请叫我头头哥
出 处:http://www.cnblogs.com/toutou/
关于作者:专注于基础平台的项目开发。如有问题或建议,请多多赐教!
版权声明:本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文链接。
特此声明:所有评论和私信都会在第一时间回复。也欢迎园子的大大们指正错误,共同进步。或者直接私信我
声援博主:如果您觉得文章对您有帮助,可以点击文章右下角【推荐】一下。您的鼓励是作者坚持原创和持续写作的最大动力!