初步接觸 Mybatis ,框架搭建

今天在網上看了一下Mybatis 學習資料,  總結了一下個人的環境搭建過程 (菜鳥學習中)


首先 , 我們要準備好所需要的JAR 文件包,  最基本的有 : log4j-1.2.16.jar ,mybatis-3.1.1.jar  ,ojdbc14.jar  (數據庫驅動包,看自己的需求吧) 。 然後我文件包複製到WEB項目 下的lib 目錄下 。 

 

接下來, 我們建立 User  實體類

package com.jackcen.bean;

public class User {
	private String name;
	private int age;
	public User() {} //必須要有這個無參構造方法,不然根據UserMapper.xml中的配置,在查詢數據庫時,將不能反射構造出User實例 
	public User(String name, int age) {
		this.name = name;
		this.age = age;
	}
	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;
	}
}


然後,就是建立 對象的接口 。 只定義, 不需要對象實現 

package com.jackcen.mapper;
import com.jackcen.bean.*;
public interface UserMapper {
	 public void insertUser(User user);  //一個簡單的插入方法吧 
	 public User getUser(String name); 
}

接下來就是編寫配置文件了 。  UserMapperMapper.xml    這個配置文件和  UserMapper  接口放在一起 

<?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.jackcen.mapper.UserMapper">
    
    <select id="getUser" resultType="String">
        select * from users where name=#{name}
    </select>
    
    <insert id="insertUser" parameterType="com.jackcen.bean.User">
        insert into users(name,age) values(#{name},#{age})
    </insert>
    
    
</mapper>

mybatis.cfg.xml   這個配置文件 放在src 目錄下   主要用於配置數據庫 驅動, 用戶名   密碼  連接  。。

<?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="oracle.jdbc.OracleDriver" />  
              <property name="url" value="jdbc:oracle:thin:@192.168.1.102:1521:PACK" />  
              <property name="username" value="system" />  
              <property name="password" value="pack" />  
            </dataSource>  
        </environment>  
    </environments>  
    
    <mappers>
        <mapper resource="com/jackcen/mapper/UserMapperMapper.xml"/>
    </mappers>
     
</configuration>  


最後就是測試了。。  

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.jackcen.bean.User;
import com.jackcen.mapper.UserMapper;


public class Test {

	/**
	 * @param args
	 * @throws IOException 
	 */
	
	public void testMybatis() throws IOException{
		String reso = "mybatis.cfg.xml";  // uri 路徑地址
		Reader rea = Resources.getResourceAsReader(reso); // 通過  Resources 類  加載資源
		SqlSessionFactoryBuilder builder = new SqlSessionFactoryBuilder();
        SqlSessionFactory factory = builder.build(rea); //  創建 SQL 會話工廠
        SqlSession session = factory.openSession();
        UserMapper usermapper = session.getMapper(UserMapper.class);
        User user = new User();
        user.setName("jackcen");
        user.setAge(20);
        usermapper.insertUser(user);
        session.commit();
        session.close();
	}
	
	
	
	
	
	public static void main(String[] args) {
		Test t = new Test();
		try {
			t.testMybatis();
		} catch (IOException e) {
			e.printStackTrace();
		}
	}

}



鑑於本人新手學習當中(第一次寫文章), 望高手們勿拍磚, 希望能夠對想學習mybatis框架的人有些幫助, 也希望前輩們指點一下   

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章