1. 程式人生 > >Mybatis入門學習(一)

Mybatis入門學習(一)

Mybatis是一款優秀的開源持久層框架。

入門demo


解壓,把mybatis-3.3.0.jar,以及lib下的所有jar,額外引入mysql的驅動包到Eclipse的lib目錄,並加入到classpath中。
這裡寫圖片描述

第二步:新建資料庫表,建立mybatis資料庫,表student,欄位id,name,age。

這裡寫圖片描述

第三步:新建Student實體類,加入log4j的配置檔案。
Student.java檔案

package com.hbk.pojo;

public class Student {

    private int id;
    private String name;
    private
int age; 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 int getAge() { return age; } public
void setAge(int age) { this.age = age; } }

log4j.properties檔案

log4j.rootLogger=DEBUG,Console

#Console
log4j.appender.Console=org.apache.log4j.ConsoleAppender
log4j.appender.Console.layout=org.apache.log4j.PatternLayout
log4j.appender.Console.layout.ConversionPattern=%d [%t] %-5p [%c] - %m%n

log4j.logger
.java.sql.ResultSet=INFO log4j.logger.org.apache=INFO log4j.logger.java.sql.Connection=DEBUG log4j.logger.java.sql.Statement=DEBUG log4j.logger.java.sql.PreparedStatement=DEBUG

第四步:新建mybatis的配置檔案和student的mapper檔案
mybatis-config.xml檔案:

<?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"></transactionManager>
            <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="123456"/>
            </dataSource>
        </environment>
    </environments>
    <mappers>
        <mapper resource="com/hbk/map/student.xml"/>
    </mappers>
</configuration>

student.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.hbk.mybatis.Student">
    <select id="findById" resultType="com.hbk.pojo.Student">
        select * from student where id = #{id}
    </select>
</mapper>

第五步:測試類:

package com.hbk.test;

import java.io.IOException;
import java.io.Reader;

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 com.hbk.pojo.Student;

public class StudentTest {

    public static void main(String[] args) {
        String resource = "com/hbk/map/mybatis-config.xml";
        try {
            Reader reader = Resources.getResourceAsReader(resource);
            SqlSessionFactory sqlSessionFactory = new SqlSessionFactoryBuilder().build(reader);
            SqlSession sqlSession = sqlSessionFactory.openSession();
            Student student = sqlSession.selectOne("findById", 1);
            System.out.println(student.getName());
            sqlSession.close();
        } catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }

    }

}

輸出結果:

這裡寫圖片描述

工程目錄結構圖:

這裡寫圖片描述