1. 程式人生 > >MyBatis簡單例項及配置檔案解析

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>

   
   <!-- 配置mybatis執行環境 -->
     <environments default="development">
        <environment id="development">
            <!-- type="JDBC" 代表使用JDBC的提交和回滾來管理事務 -->
            <transactionManager type="JDBC" />
            
            <!-- mybatis提供了3種資料來源型別,分別是:POOLED,UNPOOLED,JNDI -->
            <!-- POOLED 表示支援JDBC資料來源連線池 -->
            <!-- UNPOOLED 表示不支援資料來源連線池 -->
            <!-- JNDI 表示支援外部資料來源連線池 -->
            <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>
    	<!-- 告知對映檔案方式1,一個一個的配置
        <mapper resource="com/xhh/mybatis/mapper/UserMapper.xml"/>-->
        <!-- 告知對映檔案方式2,自動掃描包內的Mapper介面與配置檔案
        <package name="com/xhh/mybatis/mapper"/> -->
        
        <mapper resource="UserMapper.xml"/>
    </mappers>
    
</configuration>

在寫mybatis-confi.xml配置檔案時,要注意userMapper.xml對映檔案的路徑,如果在src目錄下的包下,要寫成:

<mapper resource="com/xhh/mybatis/config/userMapper.xml"/>

而我採用在src目錄的父目錄下建立config資料夾,將配置檔案放在src同級目錄下,路徑配置相對簡單。

<?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,namespace的值習慣上設定成包名+sql對映檔名,這樣就能夠保證namespace的值是唯一的
例如namespace="me.gacl.mapping.userMapper"就是me.gacl.mapping(包名)+userMapper(userMapper.xml檔案去除字尾)
 -->
<mapper namespace="usertest">
    <!-- 在select標籤中編寫查詢的SQL語句, 設定select標籤的id屬性為getUser,id屬性值必須是唯一的,不能夠重複
    使用parameterType屬性指明查詢時使用的引數型別,resultType屬性指明查詢返回的結果集型別
    resultType="me.gacl.domain.User"就表示將查詢結果封裝成一個User類的物件返回
    User類就是users表所對應的實體類
    -->
    <!-- 
        根據id查詢得到一個user物件
     -->
    <select id="user" resultType="com.xhh.mybatis.bean.User">
        select * from t_user where id=#{id}
    </select>
</mapper>

對於userMapper.xml的配置,要注意namespace的值,可以隨意命名,但應該使其有意義。在寫sql的<select id="">也是同理。

package com.xhh.mybatis.test;

import java.io.IOException;
import java.io.InputStream;

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 com.xhh.mybatis.bean.User;

public class MyBatisTest {
	
	public SqlSessionFactory getSqlSessionFactory() throws IOException{
		//載入全域性配置檔案
		String resource = "mybatis-config.xml";
		InputStream inputStream = Resources.getResourceAsStream(resource);
		return new SqlSessionFactoryBuilder().build(inputStream);
		
	}
	
	@Test
	public void test() throws IOException{
		SqlSessionFactory sqlSessionFactory = getSqlSessionFactory();
		SqlSession openSession = sqlSessionFactory.openSession();
		try {
			//第一個引數:名稱空間+配置檔案id
			//第二個引數:要查詢的資料庫表id值
			User user = openSession.selectOne("usertest.user",1);
			System.out.println(user);
		}finally {
			openSession.close();
		}
	}

}

編寫測試類時,sessionOne後面的引數為"名稱空間+select的id",資料庫表的值

養成良好的編寫程式碼習慣,可以規範專案的程式碼,容易迭代。。。

相關推薦

MyBatis簡單例項配置檔案解析

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

mybatis-Config.xml全域性配置檔案解析

一:mybatis-Config.xml配置檔案的內容和配置順序如下 properties(屬性)settings(全域性配置引數)typeAiases(類型別名)typeHandlers(型別處理器)objectFactory(物件工廠)plugins(外掛)enviro

Spring+SpringMVC+MyBatis深入學習搭建(三)——MyBatis全域性配置檔案解析

MyBatis的全域性配置檔案SqlMapConfig.xml,配置內容和順序如下: properties(屬性) setting(全域性配置引數) typeAliases(類名別名) typeHandlers(類名處理器) objectFactory(物件工廠) plugins(外掛) environm

JavaEE-SSM:007 Mybatis配置檔案解析(4)

1.系統級別的typeHandler   2.自定義typeHandler   想要自己實現typeHandler,需要實現TypeHandler<T>介面,T就是你要轉換的Java型別 setParameter(PreparedSta

JavaEE-SSM:006 Mybatis配置檔案解析(3)

別名主要用於Mapper的xml檔案指定輸入型別或者返回結果型別的名稱的時候,替代全限定名。(前文已經提及如何使用別名)   1.系統級別的typeAlias(類型別名)     2.自定義別名   這裡的alias屬性值得是

JavaEE-SSM:005 Mybatis配置檔案解析(2)

setting配置不常用,給出配置說明:     本文給出Setting配置的全量程式碼:   <settings> <setting name="cacheEnabled" value="true"

JavaEE-SSM:004 Mybatis配置檔案解析(1)

1.配置項:不可顛倒順序     2.Properties配置   好處就是:一處配置,多處使用。當然不嫌麻煩,直接配置,不使用property也是可以的。 在Properties下配置相關的配置Property:name是引用的時候的名稱

JavaEE-SSM:009 Mybatis配置檔案解析(6)

檔案型別轉換器(不常用)   假設資料庫有blob格式的欄位儲存需求: 對應著POJO的byte陣列: ResultMap中有對應的typeHandler配置:   當然,我們可以在POJO中使用InputStream替代byte陣列,但

JavaEE-SSM:008 Mybatis配置檔案解析(5)

1.系統級列舉typeHandler--EnumOridinalTypeHAndler 資料庫儲存為數字 //建立一個列舉 public enum SexEnum { MALE(1,"男"), FEMALE(0,"女"); private int id;

Mybatis配置檔案解析過程詳解

記錄是一種精神,是加深理解最好的方式之一。 這篇文章能夠幫你 學會如何對Mybatis進行有效配置,理解對應的配置含義,知其然知其所以然。 學會在Mybatis預設實現無法滿足需求的時候怎麼去擴充套件。 從構建SqlSessionFactory說起        

mybatis——config全域性配置檔案解析

原文:https://www.cnblogs.com/pjfmeng/p/7677773.html 在全集配置檔案中引入dtd約束“http://mybatis.org/dtd/mybatis-3-config.dtd”,主要有以下幾個標籤,現在詳細解釋下這幾個標籤的使用 1、prop

ssm框架中,web專案中applicationContext.xml相關配置檔案解析

一、概述 applicationContext.xml,即Spring上下文配置檔案,用於完成Spring和MyBatis的整合。主要配置bean自動掃描、依賴注入、資料庫、事務等。如下 <?xml version="1.0" encoding="UTF-8"?> &l

Struts2跟freemarker的配置例項講解(FTL檔案解析)

Freemarker 簡介 FreeMarker允許Java servlet保持圖形設計同應用程式邏輯的分離,這是通過在模板中密封HTML完成的。模板用servlet提供的資料動態地生成 HTML。模板語言是強大的直觀的,編譯器速度快,輸出接近靜態

mybatis generator 配置檔案解析

這是mybatis3 generator 配置檔案,包括了主要的配置引數,具體的配置說明請在文章結尾處下載 完整的配置應用。  應用是基於myeclipse的java應用。  文章中的MBG指的就是MybatisGenerator這個工具。  <?xml version="1.0" encoding=

MyBatis配置檔案解析

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

mybatis配置檔案解析

技術實現夢想--在mybatis中的mybaits-config.xml中的配置項檢視配置檔案中的連線 :http://mybatis.org/dtd/mybatis-3-config.dtd 便可清楚mybatis中屬性的書寫順序<!ELEMENTconfigurat

Mybatis入門以及配置檔案解析

一 mybatis入門 1.1 mybatis是什麼 MyBatis是一個簡化和實現了 Java 資料持久化層(persistence layer)的開源框架,它抽象了大量的JDBC冗餘程式碼,並提供了一個簡單易用的API和資料庫互動。

MyBatis 全域性配置檔案解析

### 1. dtd約束 1.config <!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN" "http://mybatis.or

mybatis的dtd約束檔案配置檔案xml自動提示

一、mybatis的dtd約束檔案位置 我使用的是mybatis-3.2.7這個版本的mybatis,裡面的核心jar包是:mybatis-3.2.7.jar,將這個jar包解壓縮後進入\org

mybatis原始碼配置檔案解析之一:解析properties標籤

mybatis作為日常開發的常用ORM框架,在開發中起著很重要的作用,瞭解其原始碼對日常的開發有很大的幫助。原始碼版本為:3-3.4.x,可執行到github進行下載。 從這篇文章開始逐一分析mybatis的核心配置檔案(mybatis-config.xml),今天先來看properties標籤的解析過程。