您现在的位置是:首页 >学无止境 >Mybatis之介绍及使用网站首页学无止境

Mybatis之介绍及使用

lgcgkCQ 2024-06-17 10:32:14
简介Mybatis之介绍及使用

Mybatis介绍

        是一款优秀的持久层框架,它支持自定义 SQL、存储过程以及高级映射;

特点

        1.支持自定义SQL、存储过程

        2.对原有的JDBC进行了封装,几乎消除了所有JDBC代码,让开发者只需关注SQL本身

        3.支持XML和注解配置方式自定完成ORM操作,实现结果映射

持久化

        持久化就是将程序的数据在持久状态和瞬时状态转化的过程

好处

        1.帮助程序猿将数据存入到数据库中

        2.传统的JDBC代码太复杂,简化–>框架–>自动化

        3.方便

Mybatis部署

创建maven项目

        java项目

        web工程

添加依赖

    <dependencies>
        <!-- https://mvnrepository.com/artifact/mysql/mysql-connector-java -->
        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <version>5.1.47</version>
        </dependency>
        <!-- https://mvnrepository.com/artifact/org.mybatis/mybatis -->
        <dependency>
            <groupId>org.mybatis</groupId>
            <artifactId>mybatis</artifactId>
            <version>3.4.6</version>
        </dependency>
        <!-- 单元测试 -->
        <dependency>
            <groupId>junit</groupId>
            <artifactId>junit</artifactId>
            <version>4.13.1</version>
        </dependency>
    </dependencies>

创建配置文件

        在resources文件夹下创建mybatis-config.xml文件(配置数据库地址、账号、密码)

创建工具类

MybatisUtils.class

public class MybatisUtils {
    private static SqlSessionFactory sqlSessionFactory;

    static {
        try{
            String resource = "mybatis-config.xml";
            InputStream inputStream = Resources.getResourceAsStream(resource);

            sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream);
        }catch (Exception e){
            e.printStackTrace();
        }
    }

    public static SqlSession getSqlSession(){
        return sqlSessionFactory.openSession();
    }
}

Mybatis使用

        1.创建数据库表

CREATE TABLE `user_test` (
  `id` int(11) NOT NULL,
  `username` varchar(255) DEFAULT NULL,
  `password` varchar(255) DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

        2.创建表实体类(UserTest.java)

         3.创建DAO接口

public interface UserDao {
    List<UserTest> getUserTestList();
}

        4.创建DAO接口映射文件xml

<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper
        PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
        "https://mybatis.org/dtd/mybatis-3-mapper.dtd">

<mapper namespace="com.lgcgk.dao.UserDao">
    <select id="getUserTestList" resultType="com.lgcgk.pojo.UserTest">
        select * from user_test
    </select>
</mapper>

        5.将映射文件添加到主配置文件(mybatis-config.xml)

         6.测试类

public class UserTests {

    @Test
    public void test(){
        SqlSession sqlSession = MybatisUtils.getSqlSession();

        UserDao userDao = sqlSession.getMapper(UserDao.class);

        List<UserTest> userTestList = userDao.getUserTestList();

        for(UserTest userTest : userTestList){
            System.out.println(userTest);
        }
    }
}

        7.结果

风语者!平时喜欢研究各种技术,目前在从事后端开发工作,热爱生活、热爱工作。