使用Maven创建MyBatis(超详细 IDEA 2020版)


注意:

数据库自备
自己改链接数据库配置文件(mybatis-config)


文章目录

    • 注意:
  • 创建Mybatis
    • 导入依赖
  • 配置文件
    • EmpMapper.xml(sql语句)
    • mybatis-config(sql连接池、导入sql语句)
    • log4j.properties(输出日志优化)
  • 创建类
    • XXXMapper(接口映射sql)
    • XXX(返回映射sql)
    • test(运行类)
  • 运行:

创建Mybatis

在Maven原有的基础上创建一个Mybatis

File --> New --> project使用Maven创建MyBatis(超详细 IDEA 2020版)_第1张图片
起项目名字使用Maven创建MyBatis(超详细 IDEA 2020版)_第2张图片
Maven目录结构
打开pom.xml文件
使用Maven创建MyBatis(超详细 IDEA 2020版)_第3张图片
将需要的Jar包写入在红色方框里,配置文件如下:
使用Maven创建MyBatis(超详细 IDEA 2020版)_第4张图片

<dependencies>
        <!-- junit单元测试 -->
        <dependency>
            <groupId>junit</groupId>
            <artifactId>junit</artifactId>
            <version>4.9</version>
        </dependency>
        <!-- mysql驱动 -->
        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <version>5.1.32</version>
        </dependency>
        <!-- mybatis -->
        <dependency>
            <groupId>org.mybatis</groupId>
            <artifactId>mybatis</artifactId>
            <version>3.2.8</version>
        </dependency>
        <!-- 整合log4j -->
        <dependency>
            <groupId>org.slf4j</groupId>
            <artifactId>slf4j-log4j12</artifactId>
            <version>1.6.4</version>
        </dependency>
    </dependencies>

导入依赖

使用Maven创建MyBatis(超详细 IDEA 2020版)_第5张图片

配置文件

在/src/resource文件里分别创建

EmpMapper.xml(sql语句)



<mapper namespace="com.dao.EmpMapper">
   这里编写sql语句
mapper>

mybatis-config(sql连接池、导入sql语句)



<configuration >
    
    <environments default="develop">
        <environment id="develop">
            
            <transactionManager type="JDBC"/>
            
            <dataSource type="POOLED">
                <property name="driver" value="com.mysql.jdbc.Driver"/>
                <property name="url" value="jdbc:mysql:///yonghedb?characterEncoding=utf-8"/>
                <property name="username" value="root"/>
                <property name="password" value="root"/>
            dataSource>
        environment>
    environments>
    
    <mappers>
        <mapper resource="EmpMapper.xml"/>
    mappers>
configuration>

log4j.properties(输出日志优化)

# Global logging configuration
log4j.rootLogger=DEBUG, stdout
# Console output...
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%5p [%t] - %m%n

创建类

在java文件夹中:

XXXMapper(接口映射sql)

使用Maven创建MyBatis(超详细 IDEA 2020版)_第6张图片

package com.dao;
import java.util.List;
import com.pojo.Emp;
/*接口的全类名:*/
public interface EmpMapper {
     
	public List<Emp> findAll01();
//	public int insert06(Map map);
	public int insert06(Emp emp);
}

XXX(返回映射sql)

使用Maven创建MyBatis(超详细 IDEA 2020版)_第7张图片

package com.pojo;
public class Emp {
     
    private Integer id;
    private String name;
    private String job;
    private Double salary;
//	提供有参构造方法,记得无参构造也带上

    //	提供get和set方法
    public Integer getId() {
     
        return id;
    }
    public Emp() {
     
        super();
    }
    public void setId(Integer id) {
     
        System.out.println("封装执行了.."+id);
        this.id = id;
    }
    public String getName() {
     
        return name;
    }
    public void setName(String name) {
     
        this.name = name;
    }
    public String getJob() {
     
        return job;
    }
    public void setJob(String job) {
     
        this.job = job;
    }
    public Double getSalary() {
     
        return salary;
    }
    public void setSalary(Double salary) {
     
        this.salary = salary;
    }
    //	提供tostring方法
    @Override
    public String toString() {
     
        return "Emp [id=" + id + ", name=" + name + ", job=" + job + ", salary=" + salary + "]";
    }
}

test(运行类)

使用Maven创建MyBatis(超详细 IDEA 2020版)_第8张图片

package com.test;
import java.io.IOException;
import java.io.InputStream;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
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.junit.Before;
import org.junit.Test;
import com.dao.EmpMapper;
import com.pojo.Emp;
public class MyBatisTest01 {
     
    private SqlSession session =null;

    @Before/*注解标记的方法会在@Test注解标记的方法之前执行*/
    public void testBefore() throws IOException {
     
        //读取mybatis核心配置文件
        InputStream in = Resources.getResourceAsStream("mybatis-config.xml");
//		获取SqlSessionFactory工厂对象
        SqlSessionFactory fac =
                new SqlSessionFactoryBuilder().build(in);
        //	获取sqlsesssion对象
        session=fac.openSession(true);//true表示自动提交事物,false表示手动提交事务
    }
    /*接口开发*/
    @Test
    public void testFindAll01() {
     
        EmpMapper mapper= session.getMapper(EmpMapper.class);
        List<Emp> list = mapper.findAll01();
        for(Emp emp:list) {
     
            System.out.println(emp);
        }
    }
    @Test
    public void testInesrt02() {
     
        EmpMapper mapper=session.getMapper(EmpMapper.class);
//		Map map = new HashMap();
//		map.put("name","马云");
//		map.put("job","教师");
//		map.put("salary","1000");
        Emp emp = new Emp();
        emp.setName("马云");
        emp.setJob("阿里巴巴ceo");
        emp.setSalary(9999.0);
        mapper.insert06(emp);
    }
}

运行:

使用Maven创建MyBatis(超详细 IDEA 2020版)_第9张图片

你可能感兴趣的:(1024程序员节,mybatis,maven,java,intellij,idea)