1. 程式人生 > 其它 >Mybatis框架簡單入門搭建

Mybatis框架簡單入門搭建

技術標籤:簡單易學mybatisjava

mybatis搭建框架基本步驟:
我用的是maven管理jar包,

第一步pom檔案配置

<!--mybatis核心包-->
<dependency>
    <groupId>org.mybatis</groupId>
    <artifactId>mybatis</artifactId>
    <version>3.5.4</version>
</dependency>
<!--mysql驅動包-->
<dependency
>
<groupId>org.wisdom-framework</groupId> <artifactId>mysql-connector-java</artifactId> <version>5.1.34_1</version> </dependency> <!----> <!--junit測試包--> <dependency> <groupId>junit</groupId> <artifactId>
junit</artifactId> <version>4.12</version> <scope>test</scope> </dependency>

第二步建立表

DROP TABLE IF EXISTS `t_student`;
CREATE TABLE `t_student`  (
  `id` int(0) NOT NULL AUTO_INCREMENT,
  `name` varchar(20) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL,
  `
sex` varchar(10) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL, PRIMARY KEY (`id`) USING BTREE ) ENGINE = InnoDB CHARACTER SET = utf8 COLLATE = utf8_general_ci ROW_FORMAT = Dynamic; -- ---------------------------- -- Records of t_student -- ---------------------------- INSERT INTO `t_student` VALUES (1, '小明', '男'); INSERT INTO `t_student` VALUES (2, '小紅', '女'); SET FOREIGN_KEY_CHECKS = 1;

第三步建立實體類

public class User {
    
    /**
     * 姓名
     */
    private String name;
     /**
     * 性別
     */
    private String sex;

    @Override
    public String toString() {
        return "User{" +
                "name='" + name + '\'' +
                ", sex='" + sex + '\'' +
                '}';
    }

    public String getName() {
        return name;
    }

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

    public String getSex() {
        return sex;
    }

    public void setSex(String sex) {
        this.sex = sex;
    }
}

第四步建立實體類Mapper介面

public interface UserMapper {
    /**
     * 獲取學生基本資訊
     * @return
     */
    List<User> getAllUser();
}

第五步建立對映檔案

<?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="mapper.UserMapper">
    <select id="getAllUser" resultType="pojo.User">
    select * from t_student;
  </select>
</mapper>

第六步配置檔案

可以在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"/>
            <dataSource type="POOLED">
                <property name="driver" value="com.mysql.jdbc.Driver"/>
                <property name="url" value="jdbc:mysql://localhost:3306/mybatistest"/>
                <property name="username" value="root"/>
                <property name="password" value="root"/>
            </dataSource>
        </environment>
    </environments>
    <!--指向Mapper對映檔案-->
    <mappers>
        <mapper resource="Mapper/UserMapper.xml"/>
    </mappers>
</configuration>

第七步測試

import mapper.UserMapper;
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.Test;
import pojo.User;

import java.io.IOException;
import java.io.Reader;
import java.util.List;

public class MybatisTest {

    @Test
    public void getAllStudentIfo(){
       //定義獲取檔名
        String resources="mybatis-config.xml";
       //建立流
        Reader reader = null;
       //讀取配置檔案 到reader物件中
        try {
            reader = Resources.getResourceAsReader(resources);
        } catch (IOException e) {
            e.printStackTrace();
        }
        //初始化mbatis,建立SqlSessionFactory的例項
        SqlSessionFactoryBuilder sqlSessionFactoryBuilder = new SqlSessionFactoryBuilder();
        SqlSessionFactory build = sqlSessionFactoryBuilder.build(reader);
        // 建立session的例項
        SqlSession sqlSession = build.openSession();
        //獲取UserMapper物件
        UserMapper mapper = sqlSession.getMapper(UserMapper.class);
        List<User> allUser = mapper.getAllUser();
        System.out.println(allUser);
        //關閉流
        try {
            reader.close();
        } catch (IOException e) {
            e.printStackTrace();
        }
    }

}

輸出結果

[User{name=‘小明’, sex=‘男’}, User{name=‘小紅’, sex=‘女’}]