目录
1.创建maven工程
2.导入相关pom依赖
3.Mybatis相关插件安装
4.Mybatis.cfg.xml配置

Pom.xml依赖
- <properties>
-
- <maven.compiler.source>1.8maven.compiler.source>
-
- <maven.compiler.target>1.8maven.compiler.target>
-
- properties>
-
- <dependencies>
-
-
-
- <dependency>
-
- <groupId>junitgroupId>
-
- <artifactId>junitartifactId>
-
- <version>4.12version>
-
- <scope>testscope>
-
- dependency>
-
-
-
- <dependency>
-
- <groupId>javax.servletgroupId>
-
- <artifactId>javax.servlet-apiartifactId>
-
- <version>4.0.0version>
-
- <scope>providedscope>
-
- dependency>
-
-
-
- <dependency>
-
- <groupId>org.mybatisgroupId>
-
- <artifactId>mybatisartifactId>
-
- <version>3.4.5version>
-
- dependency>
-
-
-
- <dependency>
-
- <groupId>mysqlgroupId>
-
- <artifactId>mysql-connector-javaartifactId>
-
- <version>5.1.44version>
-
- dependency>
-
-
-
-
-
-
-
-
-
- <dependency>
-
- <groupId>org.apache.logging.log4jgroupId>
-
- <artifactId>log4j-coreartifactId>
-
- <version>2.9.1version>
-
- dependency>
-
- <dependency>
-
- <groupId>org.apache.logging.log4jgroupId>
-
- <artifactId>log4j-apiartifactId>
-
- <version>2.9.1version>
-
- dependency>
-
-
-
- <dependency>
-
- <groupId>org.apache.logging.log4jgroupId>
-
- <artifactId>log4j-webartifactId>
-
- <version>2.9.1version>
-
- dependency>
-
- dependencies>
-
- <build>
-
- <resources>
-
-
-
- <resource>
-
- <directory>src/main/javadirectory>
-
- <includes>
-
- <include>**/*.xmlinclude>
-
- includes>
-
- resource>
-
-
-
- <resource>
-
- <directory>src/main/resourcesdirectory>
-
- <includes>
-
- <include>jdbc.propertiesinclude>
-
- <include>*.xmlinclude>
-
- includes>
-
- resource>
-
- resources>
-
- <plugins>
-
- <plugin>
-
- <groupId>org.mybatis.generatorgroupId>
-
- <artifactId>mybatis-generator-maven-pluginartifactId>
-
- <version>1.3.2version>
-
- <dependencies>
-
-
-
- <dependency>
-
- <groupId>mysqlgroupId>
-
- <artifactId>mysql-connector-javaartifactId>
-
- <version>5.1.44version>
-
- dependency>
-
- dependencies>
-
- <configuration>
-
- <overwrite>trueoverwrite>
-
- configuration>
-
- plugin>
-
- plugins>
-
- build>
Jdbc.properties
- jdbc.driver=com.mysql.jdbc.Driver
- jdbc.url=jdbc:mysql://localhost:3306/mysql?useUnicode=true&characterEncoding=UTF-8
- jdbc.username=root
- jdbc.password=minjie
Web.xml
- <web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
-
- xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
-
- xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd"
-
- version="3.1">web-app>
接下来安装以下插件
Free mybatis plugin
Mybatis generator
mybatis tools
maven helper
mybatis.cfg.xml
- configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN" "http://mybatis.org/dtd/mybatis-3-config.dtd">
- <configuration>
-
- <properties resource="jdbc.properties"/>
-
- <settings>
- <setting name="logImpl" value="LOG4J2"/>
- settings>
-
-
- <typeAliases>
-
- typeAliases>
-
-
-
- <environments default="development">
- <environment id="development">
-
- <transactionManager type="jdbc"/>
-
-
-
-
-
- <dataSource type="POOLED">
- <property name="driver"
- value="${jdbc.driver}"/>
- <property name="url"
- value="${jdbc.url}"/>
- <property name="username" value="${jdbc.username}"/>
- <property name="password" value="${jdbc.password}"/>
- dataSource>
- environment>
- environments>
-
- <mappers>
- <mapper resource="com/javaxl/mapper/BookMapper.xml"/>
- mappers>
- configuration>

generatorConfig.xml
- generatorConfiguration PUBLIC "-//mybatis.org//DTD MyBatis Generator Configuration 1.0//EN"
- "http://mybatis.org/dtd/mybatis-generator-config_1_0.dtd" >
- <generatorConfiguration>
-
- <properties resource="jdbc.properties"/>
-
-
- <classPathEntry location="D:\\initPath\\mvn_repository\\mysql\\mysql-connector-java\\5.1.44\\mysql-connector-java-5.1.44.jar"/>
-
-
- <context id="infoGuardian">
-
- <commentGenerator>
- <property name="suppressAllComments" value="true"/>
- <property name="suppressDate" value="true"/>
- commentGenerator>
-
-
- <jdbcConnection driverClass="${jdbc.driver}"
- connectionURL="${jdbc.url}" userId="${jdbc.username}" password="${jdbc.password}"/>
-
-
- <javaTypeResolver>
-
- <property name="forceBigDecimals" value="false"/>
- javaTypeResolver>
-
-
-
-
- <javaModelGenerator targetPackage="com.javaxl.model"
- targetProject="src/main/java">
-
- <property name="enableSubPackages" value="false"/>
-
- <property name="constructorBased" value="true"/>
-
- <property name="trimStrings" value="false"/>
-
- <property name="immutable" value="false"/>
- javaModelGenerator>
-
-
- <sqlMapGenerator targetPackage="com.javaxl.mapper"
- targetProject="src/main/java">
-
- <property name="enableSubPackages" value="false"/>
- sqlMapGenerator>
-
-
-
-
-
- <javaClientGenerator targetPackage="com.javaxl.mapper"
- targetProject="src/main/java" type="XMLMAPPER">
-
- <property name="enableSubPackages" value="false"/>
- javaClientGenerator>
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- <table schema="" tableName="t_mvc_Book" domainObjectName="Book"
- enableCountByExample="false" enableDeleteByExample="false"
- enableSelectByExample="false" enableUpdateByExample="false">
-
-
-
-
- table>
-
- context>
- generatorConfiguration>
mybatis-generator:generate -e

SessionUtil.java
- package com.javaxl.util;
-
- import org.apache.ibatis.session.SqlSession;
- import org.apache.ibatis.session.SqlSessionFactory;
- import org.apache.ibatis.session.SqlSessionFactoryBuilder;
-
- /**
- * @author 敏杰
- */
- public class SessionUtil {
- private static SqlSessionFactory sessionFactory;
- private static ThreadLocal
threadLocal = new ThreadLocal(); - static {
- sessionFactory = new SqlSessionFactoryBuilder().build(SessionUtil.class.getResourceAsStream("/mybatis.cfg.xml"));
- }
-
- public static SqlSession openSession() {
- SqlSession session = threadLocal.get();
- if (null == session) {
- session = sessionFactory.openSession();
- threadLocal.set(session);
- }
- return session;
- }
-
- public static void main(String[] args) {
- SqlSession session = openSession();
- System.out.println(session.getConnection());
- session.close();
- // System.out.println(session.getConnection());
- }
- }
BookService.java
- package com.javaxl.service;
-
- import com.javaxl.model.Book;
-
- /**
- * @author 敏杰
- */
- public interface BookService {
- int deleteByPrimaryKey(Integer bid);
-
- int insert(Book record);
-
- int insertSelective(Book record);
-
- Book selectByPrimaryKey(Integer bid);
-
- int updateByPrimaryKeySelective(Book record);
-
- int updateByPrimaryKey(Book record);
- }
BookServiceImpl.java
- package com.javaxl.service.impl;
-
- import com.javaxl.mapper.BookMapper;
- import com.javaxl.model.Book;
- import com.javaxl.service.BookService;
-
- /**
- * @author 敏杰
- */
- public class BookServiceImpl implements BookService {
- private BookMapper bookMapper;
-
- public BookMapper getBookMapper() {
- return bookMapper;
- }
-
- public void setBookMapper(BookMapper bookMapper) {
- this.bookMapper = bookMapper;
- }
-
- @Override
- public int deleteByPrimaryKey(Integer bid) {
- return bookMapper.deleteByPrimaryKey(bid);
- }
-
- @Override
- public int insert(Book record) {
- return bookMapper.insert(record);
- }
-
- @Override
- public int insertSelective(Book record) {
- return bookMapper.insertSelective(record);
- }
-
- @Override
- public Book selectByPrimaryKey(Integer bid) {
- return bookMapper.selectByPrimaryKey(bid);
- }
-
- @Override
- public int updateByPrimaryKeySelective(Book record) {
- return bookMapper.updateByPrimaryKeySelective(record);
- }
-
- @Override
- public int updateByPrimaryKey(Book record) {
- return bookMapper.updateByPrimaryKey(record);
- }
- }
BookServiceImplTest.java
- package com.javaxl.test;
-
- import com.javaxl.mapper.BookMapper;
- import com.javaxl.model.Book;
- import com.javaxl.service.BookService;
- import com.javaxl.service.impl.BookServiceImpl;
- import com.javaxl.util.SessionUtil;
- import org.apache.ibatis.session.SqlSession;
- import org.junit.After;
- import org.junit.Before;
- import org.junit.Test;
-
- /**
- * @author 敏杰
- */
- public class BookServiceImplTest {
- private BookService bookService;
- private SqlSession sqlSession;
-
- @Before
- public void setUp() throws Exception {
- BookServiceImpl bookServiceImpl = new BookServiceImpl();
- sqlSession = SessionUtil.openSession();
- bookServiceImpl.setBookMapper(sqlSession.getMapper(BookMapper.class));
- this.bookService = bookServiceImpl;
- }
-
- @After
- public void tearDown() throws Exception {
- sqlSession.commit();
- sqlSession.close();
- }
-
- @Test
- public void insert() {
- Book book = new Book();
- book.setBname("zzz");
- book.setPrice(99f);
- book.setBid(10003);
- int insert = bookService.insert(book);
- }
-
-
- @Test
- public void selectByPrimaryKey() {
- Book book = this.bookService.selectByPrimaryKey(66);
- System.out.println(book);
-
- }
- }