今天在網上看了一下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框架的人有些幫助, 也希望前輩們指點一下