Mybatis快速入门

Mybatis

第一步导入相关依赖

<dependencies>
        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <version>8.0.26</version>
        </dependency>
        <dependency>
            <groupId>org.mybatis</groupId>
            <artifactId>mybatis</artifactId>
            <version>3.5.6</version>
        </dependency>
    </dependencies>

第二步 在resource目录下配置 mybatis核心配置文件

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

<configuration>
   
    <environments default="development">
        <environment id="development">
            <!--事务管理-->
            <transactionManager type="JDBC"/>
            <!--数据源 POOLED 连接池-->
            <dataSource type="POOLED">
                <property name="driver" value="com.mysql.cj.jdbc.Driver" />
                <property name="url" value="jdbc:mysql://localhost:3306/hero" />
                <property name="username" value="root" />
                <property name="password" value="1234" />
            </dataSource>
        </environment>
    </environments>

    <mappers>
        <!--导入Mapper.xml 里面写各种各样的sql语句-->
       <mapper resource="Mapper.xml"></mapper>
    </mappers>
</configuration>

第三步 写Mapper.xml 文件 里面写各种sql语句

<?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">
<!--
namespace 是接口的名称
id 必须要和接口的方法一样
parameterType 是传入参数的类型
-->
<mapper namespace="PersonMapper">
    <!--通过id 找到 这个 标签-->
    <insert id="add" parameterType="person">
        insert into person values (#{id},#{name},#{pwd},#{birthday});
    </insert>

</mapper>

第四步 编写实体类 和数据库 表字段 一一对应

import java.util.Date;
public class person {
    private int id;
    private String name;
    private String pwd;
    private Date birthday;

    @Override
    public String toString() {
        return "person{" +
                "id=" + id +
                ", name='" + name + '\'' +
                ", pwd='" + pwd + '\'' +
                ", birthday=" + birthday +
                '}';
    }

    public int getId() {
        return id;
    }

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

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public String getPwd() {
        return pwd;
    }

    public void setPwd(String pwd) {
        this.pwd = pwd;
    }

    public Date getBirthday() {
        return birthday;
    }

    public void setBirthday(Date birthday) {
        this.birthday = birthday;
    }
}

第五步 写接口

public interface PersonMapper {
    //添加方法
    public void add(person person);
}

第六步 测试

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 java.io.IOException;
import java.io.InputStream;
import java.util.Date;

public class test {
    public static void main(String[] args) throws IOException {
         //加载 Mybatis 核心配置文件
        InputStream resourceAsStream = Resources.getResourceAsStream("mybatis-conf.xml");
         //创建工厂
        SqlSessionFactory build = new SqlSessionFactoryBuilder().build(resourceAsStream);
        //创建 sqlSession 会话
        SqlSession sqlSession = build.openSession();
	//通过sqlSession 对象获取 PersonMapper 接口对象
        PersonMapper mapper = sqlSession.getMapper(PersonMapper.class);
        
	//创建person对象
        person person = new person();
        person.setId(1);
        person.setName("zhangsan");
        person.setPwd("1234");
        person.setBirthday(new Date());
        
	//调用接口的添加方法
        mapper.add(person);
        //事务提交
        sqlSession.commit();
    }
}
posted @ 2022-06-07 10:44  起始者  阅读(21)  评论(0)    收藏  举报