一、lombok插件
1.1 lombok的安装
<dependency>
<groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId>
<version>1.18.2</version>
<scope>provided</scope>
</dependency>
1.2 lombok的使用
@Data:注解在类上,提供类所有属性的 getting 和 setting 方法,此外还提供了equals、canEqual、hashCode、toString 方法;
@Setter :注解在属性上,为属性提供 setting 方法;
@Getter :注解在属性上,为属性提供 getting 方法;
@Log4j :注解在类上,为类提供一个属性名为 log 的 log4j 日志对象;
@NoArgsConstructor :注解在类上,为类提供一个无参的构造方法;
@AllArgsConstructor :注解在类上,为类提供一个全参的构造方法;
@Cleanup : 可以关闭流;
@Builder :被注解的类加个构造者模式
@Synchronized :加个同步锁;
@SneakyThrows : 等同于try/catch 捕获异常;
@NonNull : 如果给参数加个这个注解,参数为null会抛出空指针异常;
@Value : 注解和@Data类似,区别在于它会把所有成员变量默认定义为private final修饰,并且不会生成set方法。
@ToString 重写toString()方法
注意区分@Data和@Value的
二、Mybatis自动化
之前无论是通过xml声明的形式或者注解的形式构建Mybatis项目,都有着大量重复的操作,例如:实体类Bean的定义、Dao接口的定义、Mapper.xml配置文件的定义等。
如何实现自动化生成?
可以通过mybatis.generator依赖包实现。
2.1 添加依赖包
<dependency>
<groupId>org.mybatis.generator</groupId>
<artifactId>mybatis-generator-core</artifactId>
<version>1.3.5</version>
</dependency>
2.2 加载插件
<build>
<plugins>
<plugin>
<groupId>org.mybatis.generator</groupId>
<artifactId>mybatis-generator-maven-plugin</artifactId>
<version>1.3.5</version>
<configuration>
<!--配置文件的路径-->
<configurationFile>src/main/resources/generatorConfig.xml</configurationFile>
<overwrite>true</overwrite>
</configuration>
<dependencies>
<dependency>
<groupId>org.mybatis.generator</groupId>
<artifactId>mybatis-generator-core</artifactId>
<version>1.3.5</version>
</dependency>
</dependencies>
</plugin>
</plugins>
</build>s
2.3 修改配置文件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>
<!--数据库驱动jar -->
<classPathEntry
location="D:\maven_repository\mysql\mysql-connector-java\5.1.40\mysql-connector-java-5.1.40.jar" />
<context id="MyBatis" targetRuntime="MyBatis3">
<!--去除注释 -->
<commentGenerator>
<property name="suppressAllComments" value="true" />
</commentGenerator>
<!--数据库连接 -->
<jdbcConnection driverClass="com.mysql.jdbc.Driver"
connectionURL="jdbc:mysql://localhost:3306/test2?useUnicode=true&characterEncoding=utf-8"
userId="root"
password="">
</jdbcConnection>
<!--生成实体类 指定包名 以及生成的地址 (可以自定义地址,但是路径不存在不会自动创建
使用Maven生成在target目录下,会自动创建) -->
<javaModelGenerator targetP说ackage="com.maven.bean"
targetProject="C:\Users\ASUS\IdeaProjects\mybatis3\src\main\java">
<property name="trimStrings" value="true" />
</javaModelGenerator>
<!--生成SQLmapper文件 -->
<sqlMapGenerator targetPackage="mapper"
targetProject="C:\Users\ASUS\IdeaProjects\mybatis3\src\main\resources">
</sqlMapGenerator>
<!--生成Dao文件,生成接口 -->
<javaClientGenerator type="XMLMAPPER"
targetPackage="com.maven.dao"
targetProject="C:\Users\ASUS\IdeaProjects\mybatis3\src\main\java">
</javaClientGenerator>
<table tableName="student" enableCountByExample="false"
enableUpdateByExample="false" enableDeleteByExample="false"
enableSelectByExample="false" selectByExampleQueryId="false">
</table>
<table tableName="grade" enableCountByExample="false"
enableUpdateByExample="false" enableDeleteByExample="false"
enableSelectByExample="false" selectByExampleQueryId="false">
</table>
<table tableName="role" enableCountByExample="false"
enableUpdateByExample="false" enableDeleteByExample="false"
enableSelectByExample="false" selectByExampleQueryId="false">
</table>
</context>
</generatorConfiguration>
运行:maven Project选项卡->plugins->找到mybatis-generator-core,双击运行就会自动生成
注意:运行一次即可,如果运行过程中,未完全成功。则将原来生成的代码删除后,再次运行。
切记!切记!切记!