mybatis IDEA版本——部署第一个mybatis项目

1、首先创建一个web项目和数据库表,下图是已经完成的项目结构图和数据库表

     

2、在pom.xml中添加依赖,和properties、build同级

 <dependencies>
    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <version>4.12</version>
      <scope>test</scope>
    </dependency>

    <dependency>
      <groupId>org.mybatis</groupId>
      <artifactId>mybatis</artifactId>
      <version>3.4.6</version>
    </dependency>

    <dependency>
      <groupId>mysql</groupId>
      <artifactId>mysql-connector-java</artifactId>
      <version>5.1.46</version>
    </dependency>

    <dependency>
      <groupId>org.slf4j</groupId>
      <artifactId>slf4j-api</artifactId>
      <version>1.7.25</version>
    </dependency>

    <dependency>
      <groupId>org.slf4j</groupId>
      <artifactId>slf4j-log4j12</artifactId>
      <version>1.7.25</version>
      <scope>test</scope>
    </dependency>

    <dependency>
      <groupId>log4j</groupId>
      <artifactId>log4j</artifactId>
      <version>1.2.17</version>
    </dependency>
    
  </dependencies>

 3、配置mybatis-config.xml

在IDEA中创建mybatis-config.xml模板:New——Edit File Templates

复制以下代码

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE configuration
        PUBLIC "-//mybatis.org//DTD Config 3.0//EN"
        "mybatis-3-config.dtd">
<configuration>

    <settings>
        <!-- 指定使用LOG4J输出日志 -->
        <setting name="logImpl" value="LOG4J"/>
    </settings>

    <typeAliases>
        <!-- 配置包的别名,通常在使用类时需要使用类的全限定名称,使用该配置后只要直接使用类名即可 -->
        <package name="com.etc.model"/>
    </typeAliases>

    <!-- 数据库环境 -->
    <environments default="development">
        <environment id="development">
            <!-- 采用JDBC管理器方式 -->
            <transactionManager type="JDBC"/>
            <!-- POOLED采用mybabtis内部连接池方式 -->
            <dataSource type="POOLED">
                <property name="driver" value="com.mysql.jdbc.Driver"/>
                <property name="url" value="jdbc:mysql://localhost:3306/mybatis"/>
                <property name="username" value="root"/>
                <property name="password" value="1234"/>
            </dataSource>
        </environment>
    </environments>

    <mappers>      
        <mapper resource="StudentMapper.xml" />
    </mappers>

</configuration>

3、创建实体类

package com.etc.model;

public class Student {
    private int id;
    private String stuname;
    private String stupassword;

    public int getId() {
        return id;
    }

    public void setId(int id) {
        this.id = id;
    }

    public String getStuname() {
        return stuname;
    }

    public void setStuname(String stuname) {
        this.stuname = stuname;
    }

    public String getStupassword() {
        return stupassword;
    }

    public void setStupassword(String stupassword) {
        this.stupassword = stupassword;
    }

}

 4、创建StudentMapper.xml模板,和创建mybatis-config.xml方法类似

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.etc.model.StudentMapper">
    <insert id="insert" parameterType="Student" useGeneratedKeys="true" keyProperty="id">
        insert into
        student(stuname,stupassword)
        values(#{stuname},#{stupassword})
    </insert>

    <select id="getById" parameterType="int" resultType="Student">
        select * from
        student where id=#{id}
    </select>

    <delete id="deleteById" parameterType="int">
        delete from
        student where id=#{id}
    </delete>

    <select id="getAll" resultType="Student">
        select * from student
    </select>

    <update id="updateById" parameterType="Student">
        update student
        set
        name=#{stuname},password=#{stupassword}
        where id=#{id}
    </update>
</mapper>

5、配置log4j查看MyBatis操作数据库过程,创建loj4j.properties

#全局配置
log4j.rootLogger=ERROR,stdout

#MyBatis日志配置
log4j.logger.com.etc.model=TRACE

#控制台输出配置
log4j.appender.stdout=org.apache.log4j.ConsoleAppender
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout
log4j.appender.stdout.layout.ConversionPattern=%5p [%t] - %m%n

6、编写测试代码

扫描二维码关注公众号,回复: 2957584 查看本文章
package com.etc.mapper;

import com.etc.model.Student;
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.BeforeClass;
import org.junit.Test;

import java.io.InputStream;
import java.util.List;

public class StudentTest {

    private static SqlSessionFactory sqlSessionFactory;

    @BeforeClass
    public static void init(){
        try {
            String resource = "mybatis-config.xml";
            InputStream is = Resources.getResourceAsStream(resource);
            sqlSessionFactory = new SqlSessionFactoryBuilder().build(is);
            is.close();
        } catch (Exception e) {
            e.printStackTrace();
        }
    }

    @Test
    public void testSelectAll(){
        try(SqlSession sqlSession = sqlSessionFactory.openSession()){
            List<Student> list = sqlSession.selectList("getAll");
            for (Student student : list) {
                System.out.println(student.getId()+"  " +student.getStuname() + "  " + student.getStupassword());
            }
        }
    }

}

运行结果

猜你喜欢

转载自blog.csdn.net/Milan__Kundera/article/details/82190706