1.先在Eclipse中安装好Maven插件,创建Maven工程:FIle ->new ->Maven Project ->next -> next->填写包名和项目名字(Group id:填包名、Artifact id:填项目名)->Finsh。
2.Maven项目包下的子包简诉。
目录 | 文件 |
pom.xml | maven的配置文件 |
/target | 编译产生的文件 |
/src/main/java | 项目源代码 |
/src/main/resource | 项目所需要用到的资源 |
/src/test/java | 项目的测试源代码 |
3.Maven项目的pom.xml配置文件所要使用的jar包。
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.openlab</groupId>
<artifactId>MyBatisMavenDemo</artifactId>
<version>0.0.1-SNAPSHOT</version>
<packaging>jar</packaging>
<name>MyBatisMavenDemo</name>
<url>http://maven.apache.org</url>
<properties>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
</properties>
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>3.8.1</version>
<scope>test</scope>
</dependency>
<!-- https://mvnrepository.com/artifact/mysql/mysql-connector-java -->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.6</version>
</dependency>
<!-- https://mvnrepository.com/artifact/org.mybatis/mybatis -->
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis</artifactId>
<version>3.4.1</version>
</dependency>
<!-- https://mvnrepository.com/artifact/log4j/log4j -->
<dependency>
<groupId>log4j</groupId>
<artifactId>log4j</artifactId>
<version>1.2.16</version>
</dependency>
<!-- https://mvnrepository.com/artifact/commons-logging/commons-logging -->
<dependency>
<groupId>commons-logging</groupId>
<artifactId>commons-logging</artifactId>
<version>1.2</version>
</dependency>
</dependencies>
<build>
<plugins>
<!-- MyBatis代码生成 -->
<plugin>
<groupId>org.mybatis.generator</groupId>
<artifactId>mybatis-generator-maven-plugin</artifactId>
<version>1.3.2</version>
<dependencies>
<!-- https://mvnrepository.com/artifact/org.mybatis/mybatis -->
<dependency>
<groupId>org.mybatis</groupId>
<artifactId>mybatis</artifactId>
<version>3.4.5</version>
</dependency>
<!-- https://mvnrepository.com/artifact/mysql/mysql-connector-java -->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>5.1.30</version>
</dependency>
</dependencies>
</plugin>
</plugins>
</build>
</project>
4.我的Maven项目的properties配置文件。
jdbc.driverClassName=com.mysql.jdbc.Driver
jdbc.url=jdbc:mysql://localhost:3306/maclu
jdbc.username=root
jdbc.password=113846
initialSize=10
maxTotal=30
maxIdle=10
minIdle=5
maxWaitMillis=1000
removeAbandonedOnMaintenance=true
removeAbandonedOnBorrow=true
removeAbandonedTimeout=1
mode.package=com.openlab.pojo
dao.package=com.openlab.mapper
xml.mapper.package=com.openlab.mapper
target.project=MyBatisMavenDemo
5.generatorconfig配置文件。
<?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>
<properties resource="db.properties"></properties>
<context id="context1" targetRuntime="Mybatis3">
<jdbcConnection
driverClass="${jdbc.driverClassName}"
connectionURL="${jdbc.url}"
userId="${jdbc.username}"
password="${jdbc.password}"/>
<javaModelGenerator targetPackage="${mode.package}" targetProject="./src/main/java"></javaModelGenerator>
<sqlMapGenerator targetPackage="${xml.mapper.package}" targetProject="./src/main/java"></sqlMapGenerator>
<javaClientGenerator targetPackage="${dao.package}" targetProject="./src/main/java" type="XMLMAPPER">
<property name="enableSubPackages" value="false"/>
</javaClientGenerator>
<table schema="???" tableName="user"
enableSelectByExample="false" enableDeleteByExample="false" enableUpdateByExample="false"
enableCountByExample="false" selectByExampleQueryId="false">
</table>
<table schema="???" tableName="role"
enableSelectByExample="false" enableDeleteByExample="false" enableUpdateByExample="false"
enableCountByExample="false" selectByExampleQueryId="false">
</table>
</context>
</generatorConfiguration>
6.自动生成数据库表单属性和mapper的java代码。
右键generatorconfig配置文件 ->Run Configurations->填写(Base directory:${workspace_loc:/Maven项目名}、Goals:mybatis-generator:generate)->Apply->Run->右键Maven项目更新Refresh
填写:
Refresh成功:
7.测试。
package com.openlab.test;
import java.io.IOException;
import java.io.InputStream;
import org.apache.ibatis.io.Resources;
import org.apache.ibatis.session.SqlSession;
import org.apache.ibatis.session.SqlSessionFactory;
import org.apache.ibatis.session.SqlSessionFactoryBuilder;
import org.apache.log4j.Logger;
import com.openlab.mapper.UserMapper;
import com.openlab.pojo.User;
public class Test {
private static Logger logger = Logger.getLogger(Test.class);
public static void main(String[] args) {
logger.trace("");
try {
InputStream is = Resources.getResourceAsStream("mybatis-config.xml");
SqlSessionFactory factory = new SqlSessionFactoryBuilder().build(is);
SqlSession session = factory.openSession();
SqlSession session1 = factory.openSession();
UserMapper mapper = session.getMapper(UserMapper.class);
UserMapper mapper1 = session1.getMapper(UserMapper.class);
User user = mapper.selectByPrimaryKey("00001");
System.out.println(user.getId());
User user1 = mapper1.selectByPrimaryKey("00001");
System.out.println(user1.getPassword());
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
显示结果: