1. 程式人生 > >MyBatis框架環境變數配置及簡單使用教程

MyBatis框架環境變數配置及簡單使用教程

Mybatis是持久層最優秀的一個框架,他解決了JDBC程式碼的冗餘以及引數的手工配置的難題,是一個反映對映以及結果集的一種框架模式,接下來主要闡述一下框架環境配置流程以及使用方法:
(1)建立maven專案
為什麼建立該專案,主要是因為在以後開發中習慣上使用的就是Maven框架,maven專案主要適合於團隊開發,通過匯入依賴包的方式解決重複匯入包的方式,解決包冗餘以及包缺失的問題,主要步驟如下
a.點選file->new->object進入建立專案對話方塊(勾選“create a simple project”)
開啟Maven專案

b.點選next進入下一步,就出現一個對話方塊,group id代表組織名,一般是網站的倒序名稱,例如“www.baidu.com”,那麼組織名就是“com
.baidu.團隊名稱.個人名字簡寫”,artifact id代表該專案名稱,另外packing 我習慣上選擇war,點選finish建立完成,如下圖所示:
設定選項


注意:建立之後就會報一些錯誤,一般選擇如下方式就可以解決
這裡寫圖片描述
(2)匯入Mybatis依賴包
點選pom.xml檔案,開啟之後一般以下程式碼複製到該檔案中即可(即主要目的就是匯入一些依賴包):

 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
  <modelVersion
>
4.0.0</modelVersion> <groupId>com.baidu.hevttc.lmj</groupId> <artifactId>Mybatis</artifactId> <version>0.0.1-SNAPSHOT</version> <packaging>war</packaging> <dependencies> <dependency> <groupId>org.mybatis</groupId>
<artifactId>mybatis</artifactId> <version>3.4.5</version> </dependency> <dependency> <groupId>ant</groupId> <artifactId>ant</artifactId> <version>1.7.0</version> </dependency> <dependency> <groupId>cglib</groupId> <artifactId>cglib</artifactId> <version>3.2.5</version> </dependency> <dependency> <groupId>commons-logging</groupId> <artifactId>commons-logging</artifactId> <version>1.2</version> </dependency> <dependency> <groupId>org.javassist</groupId> <artifactId>javassist</artifactId> <version>3.22.0-GA</version> </dependency> <dependency> <groupId>log4j</groupId> <artifactId>log4j</artifactId> <version>1.2.17</version> </dependency> <dependency> <groupId>org.apache.logging.log4j</groupId> <artifactId>log4j-api</artifactId> <version>2.9.1</version> </dependency> <dependency> <groupId>org.apache.logging.log4j</groupId> <artifactId>log4j-core</artifactId> <version>2.9.1</version> </dependency> <dependency> <groupId>ognl</groupId> <artifactId>ognl</artifactId> <version>3.2.4</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>mysql</groupId> <artifactId>mysql-connector-java</artifactId> <version>5.1.4</version> </dependency> </dependencies> </project>

點選儲存,maven就會自動從本地倉庫或者中央倉庫匯入架包,儲存在java Resources->libraries->maven depend…………裡面即可看到
注意:匯入依賴包時一般從中央倉庫領取,我喜歡中央倉庫有兩個,網址如下
1.阿里雲:http://maven.aliyun.com/nexus/#welcome
2.Maven Repository: http://mvnrepository.com/
(3)接下來開始建立mybatis專案,首先先配置資料庫連線命令,我一般在src/main/resoource進行建立,建立一個xml檔案,名稱為configure.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" />
            <dataSource type="POOLED">  
                <property name="driver" value="com.mysql.jdbc.Driver" />
                <property name="url" value="jdbc:mysql://127.0.0.1:3306/project3" />
                <property name="username" value="root" />
                <property name="password" value="" />
          </dataSource>
        </environment>
    </environments>
</configuration>

(4)建立一個實體類(HUser.java),實體類內容如下所示:

package com.baidu.hevttc.lmj;

public class HUser {
    private int id;
    private String username;
    private int age;
    private int sex;
    private String place;
    public int getId() {
        return id;
    }
    public void setId(int id) {
        this.id = id;
    }
    public String getUsername() {
        return username;
    }
    public void setUsername(String username) {
        this.username = username;
    }
    public int getAge() {
        return age;
    }
    public void setAge(int age) {
        this.age = age;
    }
    public int getSex() {
        return sex;
    }
    public void setSex(int sex) {
        this.sex = sex;
    }
    public String getPlace() {
        return place;
    }
    public void setPlace(String place) {
        this.place = place;
    }

}

(5)建立一個配置檔案,名稱是“Huser.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" />
            <dataSource type="POOLED">  
                <property name="driver" value="com.mysql.jdbc.Driver" />
                <property name="url" value="jdbc:mysql://127.0.0.1:3306/project3" />
                <property name="username" value="root" />
                <property name="password" value="liuming2011" />
          </dataSource>
        </environment>
    </environments>
<!-- 實體類對映配置 -->
    <mappers>

        <mapper resource="com/baidu/hevttc/lmj/HUser.xml"/>

    </mappers>
</configuration>

(6)接下來就是到了使用階段,建立Main.java進行執行,程式碼如下所示:

package com.baidu.hevttc.Main;

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

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.baidu.hevttc.lmj.HUser;

public class Main {
    public static void main(String[] args) {
        try {
            SqlSessionFactory fac=new SqlSessionFactoryBuilder().build(Resources.getResourceAsReader("Configure.xml"));

            SqlSession session=fac.openSession();

            List<HUser> list=session.selectList("com.baidu.hevttc.lmj.HUser.SelectAllHUser");

            System.out.println("ID號\t姓名\t年齡\t性別\t地址");
            for(HUser user:list)
            {
                System.out.println(user.getId()+"\t"+user.getUsername()+"\t"+user.getAge()+"\t"+(user.getSex()==0?"男":"女")+"\t"+user.getPlace());
            }
            session.close();
        } catch (IOException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
    }
}

(6)在執行之前先建立表並插入資料,建立表的sql語句以及插入資料如下所示:

create TABLE h_user(

    id Int PRIMARY KEY AUTO_INCREMENT,

    username VarChar(4),

    age Int,

    sex Int,

    place VarChar(100)
);

insert INTO h_user (username,age,sex,place) values('張三',25,0,'黑龍江省依蘭縣');
insert INTO h_user (username,age,sex,place) values('李四',22,1,"黑龍江省哈爾濱市");
insert INTO h_user (username,age,sex,place) values('王五',23,0,"河北省秦皇島市");

截至目前基本配置已經完成,歡迎csdn博友評論以及提出問題