前言:经过几天对SSM(Spring+springMVC+Mybatis)的学习,于是乎想用maven搭建一个SSM框架,在逆向生成项目时,出现了几个问题,在这里与大家分享,希望对你有所帮助。
maven、jdk版本:打开cmd--->输入mvn -v 查看版本信息
mysql版本:打开cmd-->输入mysql --version 查看版本信息
Mybatis generator 配置文件mybatis-generator(名称随便起)
<?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地址 后来发现不指定也可以,它会根据项目里的jar包自动引用-->
<!--<classPathEntry location="D:\Maven\repository\mysql\mysql-connector-java\8.0.11\mysql-connector-java-8.0.11.jar"></classPathEntry>-->
<!--一个数据库配置一个-->
<context id="DB2Tables" targetRuntime="MyBatis3">
<!--不生成注释 生成的文件中没有注释,看起来比较清爽-->
<commentGenerator>
<property name="suppressAllComments" value="true"></property>
</commentGenerator>
<!--配置数据库连接信息-->
<!--connectionURL 非常重要 一般在这里出错-->
<jdbcConnection driverClass="com.mysql.cj.jdbc.Driver"
connectionURL="jdbc:mysql://localhost:3306/ssm_crud?useSSL=false&characterEncoding=utf8&serverTimezone=Asia/Shanghai&nullCatalogMeansCurrent=true"
userId="root"
password="5201314sks">
</jdbcConnection>
<javaTypeResolver >
<property name="forceBigDecimals" value="false" />
</javaTypeResolver>
<!--指定javaBean生成的位置-->
<javaModelGenerator targetPackage="com.inspur.bean" targetProject=".\src\main\java">
<property name="enableSubPackages" value="true" />
<property name="trimStrings" value="true" />
</javaModelGenerator>
<!--指定sql映射文件生成的位置-->
<sqlMapGenerator targetPackage="mapper" targetProject=".\src\main\resources">
<property name="enableSubPackages" value="true" />
</sqlMapGenerator>
<!--指定dao接口生成的位置-->
<javaClientGenerator type="XMLMAPPER" targetPackage="com.inspur.dao" targetProject=".\src\main\java">
<property name="enableSubPackages" value="true" />
</javaClientGenerator>
<!--table指定每个表的生成策略 数据库中的表-->
<table tableName="tbl_emp" domainObjectName="Employee"></table>
<table tableName="tbl_dept" domainObjectName="Department"></table>
</context>
</generatorConfiguration>
生成类Generator.java
import org.mybatis.generator.api.MyBatisGenerator;
import org.mybatis.generator.config.Configuration;
import org.mybatis.generator.config.xml.ConfigurationParser;
import org.mybatis.generator.internal.DefaultShellCallback;
import java.io.File;
import java.util.ArrayList;
import java.util.List;
public class Generator {
public static void main(String[] args) throws Exception{
List<String> warnings = new ArrayList<String>();
boolean overwrite = true;
File configFile = new File("mybatis-generator.xml");//名称和配置的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);
}
}