代码生成器
导入三个相关的架包
代码生成器就是当你配置这个插件之后 它会自动帮你生成对应的类的实体类并且把实体类里面的getset方法带参无参全部生成好
把mapper接口里面的要用到所有方法的模板都生成好
把你SQL语句配置文件里面的要用到的SQL语句模板也全部都配置好
具体步骤如下:
将这个配置文件直接复制到拿到配置文件里面
<?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/kj12" userId="root" password="root"> </jdbcConnection> //<!-- 是否使用bigDecimal, false可自动转化以下类型(Long, Integer, Short,) // 默认false,把JDBC DECIMAL 和 NUMERIC 类型解析为 Integer,为 true时把JDBC DECIMAL // 和 NUMERIC 类型解析为java.math.BigDecimal --> <javaTypeResolver> <property name="forceBigDecimals" value="false"/> </javaTypeResolver> //<!--生成实体类存放位置,这里是可以自动生成的,不需要创建 改一下你实体类的路径--> <javaModelGenerator targetPackage="com.sky.pojo" targetProject="src"> <property name="enableSubPackages" value="true"/> //<!-- 设置是否在getter方法中,对String类型字段调用trim()方法 --> <property name="trimStrings" value="true"/> </javaModelGenerator> //<!--生成映射文件(mapper.xml)存放位置,也不需要创建,可以生成 改一下你生成的配置文件的路径-->
<sqlMapGenerator targetPackage="com.sky.mapper.mapperxml" targetProject="src"> <!-- enableSubPackages:是否让schema作为包的后缀 --> <property name="enableSubPackages" value="true"/> </sqlMapGenerator> //<!--生成Mapper接口存放位置, 不要创建,会生成 改一下你生成的接口的文件路径--> <javaClientGenerator type="XMLMAPPER" targetPackage="com.sky.mapper" targetProject="src"> <property name="enableSubPackages" value="true"/> </javaClientGenerator> //<!--生成对应表及类名,你想生成几个就给你生成几个,tableName:表名,domainObjectName:实体类名--> <table tableName="user" domainObjectName="User" enableCountByExample="false" enableUpdateByExample="false" enableDeleteByExample="false" enableSelectByExample="false" selectByExampleQueryId="false"></table> <table tableName="exam" domainObjectName="Exam" enableCountByExample="false" enableUpdateByExample="false" enableDeleteByExample="false" enableSelectByExample="false" selectByExampleQueryId="false"></table> <table tableName="student1" domainObjectName="Student1" enableCountByExample="false" enableUpdateByExample="false" enableDeleteByExample="false" enableSelectByExample="false" selectByExampleQueryId="false"></table> <!-- <table tableName="t_contect" domainObjectName="Contect" enableCountByExample="false" enableUpdateByExample="false" enableDeleteByExample="false" enableSelectByExample="false" selectByExampleQueryId="false"></table>--> <!-- <table tableName="t_county" domainObjectName="County" enableCountByExample="false" enableUpdateByExample="false" enableDeleteByExample="false" enableSelectByExample="false" selectByExampleQueryId="false"></table>--> <!-- <table tableName="t_course" domainObjectName="Course" enableCountByExample="false" enableUpdateByExample="false" enableDeleteByExample="false" enableSelectByExample="false" selectByExampleQueryId="false"></table>--> </context> </generatorConfiguration>
注意: 上面这段代码只要把 数据库的信息和你要生成的文件的路径和你要生成的表名改一下即可 如果你不改 那spring就会按照你给的路径帮你生成相关的文件
然后将下面这段代码复制 测试一下即可 这些代码只要做了解进行了
public void generator() throws Exception { List<String> warnings = new ArrayList<String>(); boolean overwrite = true; //指定 逆向工程配置文件的地址,注意:写绝对路径 File configFile = new File("D:\\Idea\\WorkSpace\\MyBatisandSpring\\src\\generatorConfig.xml"); ConfigurationParser cp = new ConfigurationParser(warnings); Configuration config = cp.parseConfiguration(configFile); DefaultShellCallback callback = new DefaultShellCallback(overwrite); MyBatisGenerator myBatisGenerator = new MyBatisGenerator(config, callback, warnings); myBatisGenerator.generate(null); } @Test public void generatorTest(){ try { // Auto - 创建的类名 EmpTest generatorSqlmap = new EmpTest(); //调用方法 generatorSqlmap.generator(); System.out.println("哈哈哈哈"); } catch (Exception e) { e.printStackTrace(); } }