MyBatis-搭建MyBatis開發環境一(MyEclipse版)
一、引入MyBatis及其相關jar包
1、mybatis-3.2.2.jar:mybatis的jar包
2、mysql-connector-java-5.1.0-bin.jar:MySQL資料庫jar包
3、log4j-1.2.16.jar:日誌、用於開發顯示提示資訊如執行的SQL語句及引數
二、新建mybatis-config.xml配置檔案
1、在專案下新建一個原始碼資料夾resources,在裡面新建一個xml取名為mybatis-config.xml
2、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">
三、在mybatis-config.xml中配置資料庫相關資訊
<configuration>
<!-- default屬性表示採用哪種配置 -->
<environments default="development">
<!-- 配置情況的一種,可以有多個,根據environments 的default來指定使用哪一種 -->
<environment id="development">
<!-- 配置事務管理 採用JDBC -->
<transactionManager type="JDBC"/>
<!-- POOLED:mybatis的資料來源,JNDI:基於tomcat的資料來源 -->
<dataSource type="POOLED">
<!-- 資料庫連線資訊 -->
<property name="driver" value="${driver}" />
<property name="url" value="${url}" />
<property name="username" value="${username}" />
<property name="password" value="${password}" />
</dataSource>
</environment>
</environments>
</configuration>
四、建立資料庫properties檔案
1、在resources原始碼資料夾下新建一個properties檔案,這裡我取名叫jdbc.properties,然後再裡面寫入資料庫連線相關資訊。
2、然後在mybatis-config.xml檔案內配置jdbc.properties檔案路徑
五、配置Log4j,讓控制檯輸出SQL語句及引數相關資訊
1、在resources資料夾下新建log4j.properties檔案
2、log4j.properties參考內容
log4j.rootLogger=DEBUG,CONSOLE,file
#log4j.rootLogger=ERROR,ROLLING_FILE
log4j.logger.cn.jbit.dao=debug
log4j.logger.com.ibatis=debug
log4j.logger.com.ibatis.common.jdbc.SimpleDataSource=debug
log4j.logger.com.ibatis.common.jdbc.ScriptRunner=debug
log4j.logger.com.ibatis.sqlmap.engine.impl.SqlMapClientDelegate=debug
log4j.logger.java.sql.Connection=debug
log4j.logger.java.sql.Statement=debug
log4j.logger.java.sql.PreparedStatement=debug
log4j.logger.java.sql.ResultSet=debug
log4j.logger.org.tuckey.web.filters.urlrewrite.UrlRewriteFilter=debug
######################################################################################
# Console Appender \u65e5\u5fd7\u5728\u63a7\u5236\u8f93\u51fa\u914d\u7f6e
######################################################################################
log4j.appender.CONSOLE=org.apache.log4j.ConsoleAppender
log4j.appender.Threshold=error
log4j.appender.CONSOLE.Target=System.out
log4j.appender.CONSOLE.layout=org.apache.log4j.PatternLayout
log4j.appender.CONSOLE.layout.ConversionPattern= [%p] %d %c - %m%n
######################################################################################
# DailyRolling File \u6bcf\u5929\u4ea7\u751f\u4e00\u4e2a\u65e5\u5fd7\u6587\u4ef6\uff0c\u6587\u4ef6\u540d\u683c\u5f0f:log2009-09-11
######################################################################################
log4j.appender.file=org.apache.log4j.DailyRollingFileAppender
log4j.appender.file.DatePattern=yyyy-MM-dd
log4j.appender.file.File=log.log
log4j.appender.file.Append=true
log4j.appender.file.Threshold=error
log4j.appender.file.layout=org.apache.log4j.PatternLayout
log4j.appender.file.layout.ConversionPattern=%d{yyyy-M-d HH:mm:ss}%x[%5p](%F:%L) %m%n
log4j.logger.com.opensymphony.xwork2=error
3、在mybatis-config.xml配置檔案內新增如下配置
<settings>
<!-- 配置mybatis的log實現為LOG4J 後臺輸出SQL語句-->
<setting name="logImpl" value="LOG4J"/>
</settings>
六、測試
1、在資料庫中新建表emp
2、建立表對應的實體類
3、新建EmpMapper.xml檔案
4、EmpMapper.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">
5、編寫EmpMapper.xml檔案
<mapper namespace="com.bc.dao.EmpMapper">
<!-- 新增Emp資料,parameterType -->
<insert id="addEmp" parameterType="com.bc.pojo.Emp">
insert into emp(empno,ename,job,mgr,hiredate,sal,comm,deptno)
values(#{empno},#{ename},#{job},#{mgr},#{hiredate},#{sal},#{comm},#{deptno})
</insert>
<!-- 更新Emp資料 -->
<update id="updateEmp" parameterType="com.bc.pojo.Emp">
update emp set ename=#{ename},job=#{job},mgr=#{mgr},hiredate=#{hiredate},sal=#{sal},
comm=#{comm},deptno=#{deptno}
where empno=#{empno}
</update>
<!-- 查詢所有僱員資訊 -->
<select id="getEmpList" resultType="com.bc.pojo.Emp">
select * from Emp
</select>
<!-- 刪除僱員資訊 -->
<delete id="deleteEmp" parameterType="com.bc.pojo.Emp">
delete from Emp where empno=#{empno}
</delete>
</mapper>
6、在mybatis-config.xml中引入EmpMapper.xml(不要忘記)
<mappers>
<!-- 要用"/"而不是"." -->
<mapper resource="com/bc/dao/EmpMapper.xml"/>
</mappers>
7、測試程式碼
public class EmpTest {
private Logger logger = Logger.getLogger(EmpTest.class);
@Test
/**新增Emp測試*/
public void addEmpTest() {
//mybatis-config.xml檔案路徑
String resource = "mybatis-config.xml";
SqlSession sqlSession = null;
//要插入的Emp物件
Emp emp = new Emp();
emp.setEname("測試");
emp.setDeptno(1);
try {
//1 讀取配置檔案(mybatis-config.xml)的輸入流
InputStream is = Resources.getResourceAsStream(resource);
//2 建立sqlSessionFactory物件,完成對配置檔案的讀取
SqlSessionFactory factory = new SqlSessionFactoryBuilder().build(is);
//3 建立sqlSession
sqlSession = factory.openSession();
//4 呼叫mapper檔案進行資料操作(呼叫之前必須要把mapper檔案加入到mybatis-config.xml)
sqlSession.insert("com.bc.dao.EmpMapper.addEmp", emp);
//5 提交事務
sqlSession.commit();
} catch (Exception e) {
e.printStackTrace();
//出現異常回滾事務
sqlSession.rollback();
} finally {
//關閉會話
sqlSession.close();
}
}
/**更新Emp測試*/
public void updateEmpTest() {
//mybatis-config.xml檔案路徑
String resource = "mybatis-config.xml";
SqlSession sqlSession = null;
//要更新的Emp物件
Emp emp = new Emp();
emp.setEmpno(65);
emp.setEname("更新測試");
try {
//1 讀取配置檔案(mybatis-config.xml)的輸入流
InputStream is = Resources.getResourceAsStream(resource);
//2 建立sqlSessionFactory物件,完成對配置檔案的讀取
SqlSessionFactory factory = new SqlSessionFactoryBuilder().build(is);
//3 建立sqlSession
sqlSession = factory.openSession();
//4 呼叫mapper檔案進行資料操作(呼叫之前必須要把mapper檔案加入到mybatis-config.xml)
sqlSession.update("com.bc.dao.EmpMapper.updateEmp", emp);
//5 提交事務
sqlSession.commit();
} catch (Exception e) {
e.printStackTrace();
//出現異常回滾事務
sqlSession.rollback();
} finally {
//關閉會話
sqlSession.close();
}
}
/**查詢Emp測試*/
public void getEmpListTest() {
//mybatis-config.xml檔案路徑
String resource = "mybatis-config.xml";
SqlSession sqlSession = null;
//查詢結果集
List<Emp> empList = new ArrayList<>();
try {
//1 讀取配置檔案(mybatis-config.xml)的輸入流
InputStream is = Resources.getResourceAsStream(resource);
//2 建立sqlSessionFactory物件,完成對配置檔案的讀取
SqlSessionFactory factory = new SqlSessionFactoryBuilder().build(is);
//3 建立sqlSession
sqlSession = factory.openSession();
//4 呼叫mapper檔案進行資料操作(呼叫之前必須要把mapper檔案加入到mybatis-config.xml)
empList = sqlSession.selectList("com.bc.dao.EmpMapper.getEmpList");
} catch (Exception e) {
e.printStackTrace();
} finally {
//關閉會話
sqlSession.close();
}
//遍歷資料
for (Emp emp : empList) {
logger.debug(emp.getEname());
}
}
/**刪除Emp測試*/
public void deleteEmpTest() {
//mybatis-config.xml檔案路徑
String resource = "mybatis-config.xml";
SqlSession sqlSession = null;
//要刪除的Emp物件
Emp emp = new Emp();
emp.setEmpno(65);
try {
//1 讀取配置檔案(mybatis-config.xml)的輸入流
InputStream is = Resources.getResourceAsStream(resource);
//2 建立sqlSessionFactory物件,完成對配置檔案的讀取
SqlSessionFactory factory = new SqlSessionFactoryBuilder().build(is);
//3 建立sqlSession
sqlSession = factory.openSession();
//4 呼叫mapper檔案進行資料操作(呼叫之前必須要把mapper檔案加入到mybatis-config.xml)
sqlSession.delete("com.bc.dao.EmpMapper.deleteEmp", emp);
//5 提交事務
sqlSession.commit();
} catch (Exception e) {
e.printStackTrace();
//出現異常回滾事務
sqlSession.rollback();
} finally {
//關閉會話
sqlSession.close();
}
}
}
8、執行結果(以插入為例)
七、總結
從以上程式碼可以看出,有很多臃腫的地方,比如類名使用完全包名+類名可以使用別名優化,測試程式碼很多重複性的程式碼可以提取出來等,這些問題參考下一篇部落格
下一篇:MyBatis-搭建MyBatis開發環境二(MyEclipse版)
相關推薦
MyBatis-搭建MyBatis開發環境一(MyEclipse版)
一、引入MyBatis及其相關jar包 1、mybatis-3.2.2.jar:mybatis的jar包 2、mysql-connector-java-5.1.0-bin.jar:MySQL資料庫jar包 3、log4j-1.2.16.jar:日誌、用於開
IDEA搭建 Spring Boot 開發環境 圖解(入門篇)
什麼是spring boot Spring Boot是由Pivotal團隊提供的全新框架,其設計目的是用來簡化新Spring應用的初始搭建以及開發過程。該框架使用了特定的方式來進行配置,從而使開發人員不再需要定義樣板化的配置。用我的話來理解,就是spring boot其實不是什麼新的框架
手把手搭建spring開發環境(一)
寫在前面:本文主要講配置xml檔案方式搭建spring開發環境,及springIOC容器建立物件的一些細節,註解方式見後續文章。 傳統的開發過程中,物件的建立是由呼叫者寫死的,spring框架中,物件的建立不再有呼叫建立,改為容器建立這就是IOC(In
Vagrant搭建虛擬化開發環境(一)初識
命令 添加 rem ava echo vagrant 文檔 下載地址 方式 Vagrant 簡介 Vagrant 是一款用來構建虛擬開發環境的工具,它是用來管理虛擬機的,同時也非常適合 php/python/ruby/java 這類語言開發 web 應用,“代碼在我機
Java 開發環境配置(Windows篇)
window系統 jar 下載jdk src 編輯 .html 系統變量 輸出 要點 window系統安裝java 下載JDK 首先我們需要下載java開發工具包JDK,下載地址:http://www.oracle.com/technetwork/java/javase
Java開發環境配置(windows系統)
gpo ogr 環境 計算機 根據 download 1.5 新建 program 第一步 下載JDK 官方下載地址:http://www.oracle.com/technetwork/java/javase/downloads/index.html,然後點擊Down
Deepin下開發環境配置(個人備用)
文章目錄 Python相關 安裝pip和pip3 虛擬環境管理 Pycharm 安裝Git 前端相關 VSCo
Deep Learning_0 Tensorflow開發環境配置(基於python)
deep learning之tensorflow兩種搭建方式。 ——————————————————————————————————————————————— 第一種方式是Anaconda環境配置 1
ubuntu17.04下Java開發環境配置(詳細步驟)
一、安裝前的準備工作 1.安裝ubutun 17.04版本作業系統; 2.到官網下載最新版的JDK; 官網連結:http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.ht
ZYNQ-Miz702 VIVADO 開發環境建立(第一章 )
1.1 VIVADO軟體介紹 “一提起Xilinx的開發環境,人們總是先會想起ISE,而對Vivado不甚瞭解。其實,Vivado是Xilinx公司於2012推出的新一代整合設計 環境。雖然目前其流行度並不高,但可以說Vivado代表了未來Xilinx FPGA開發環境的
Sublime text_python開發環境設定(windows下)
如果是想在sublime裡要python shell那種互動或者run module F5 F5 F5下這種效果的話,還是挺容易實現的,windows下的:1. 開啟Sublime text 3 安裝package controlSublime Text 3 安裝Package Control2. 安裝 Su
HTML5移動開發環境配置(AndroidStudio+Cordova)
1、安裝JDK安裝過程中的路徑可以使用預設的路徑,但是為了後期配置的方便,建議自定義一個簡單的路徑,這裡使用如下路徑: 假設:JDK的安裝路徑設定為 C:\java\jdk1.8 安裝過程中間會彈出JRE的安裝,此時設定JRE的安裝路徑為C:
Git 與 GitLab 環境配置(Mac版)
安裝Git 使用圖形化Git安裝工具,下載地址:https://git-scm.com/downloads 配置GitLab SSH公鑰 Git支援HTTPS和SSH兩種協議,HTTPS每次pull、push時要求輸入密碼,建議使用SSH。 1、檢視本機是否有SSH key。 $
搭建Maven私服Nexus(CentOS版)
1、下載Nexus https://www.sonatype.com/download-oss-sonatype 2、解壓Nexus 上傳到/usr/local/nexus資料夾下面, 解壓 tar -zxvf nexus-3.14.0-04-unix.tar.gz 3、配置Nexus服
Node.js安裝及環境配置(windows版)
這裡簡要記載下Node.js安裝流程,畢竟配置環境機會很少,以備後續使用,過程很簡單,但坑還是一如既往有的。 第一步,進入官網下載nodeJS 進入官網“http://nodejs.cn/download/”根據本人電腦,按需下載: 一路【next】,需要
java開發實戰經典(第二版)P217 6-4
6.4 定義員工類,具有姓名、年齡、性別屬性,並具有構造方法和顯示資料方法。定義管理層類,繼承員工類,並具有自己的屬性:職務和年薪。定義職員類繼承員工類,並有自己的屬性:所屬部門和月薪。 package book; //Staff 員工類 public class
C# DirectInput遊戲手柄和鍵盤開發心得2(SharpDX版)
1、SharpDX下載 VS下載: 專案右鍵——管理nuget程式包——瀏覽——搜尋SharpDX——下載 搜尋SharpDX.DirectInput——下載 我是在這裡兩個都下了,應該是自動識別你當
企業微信第三方應用開發授權設定(PHP版)
開發之前一定要搞明白,企業微信不是企業微訊號,雖然有相似之處,但不盡相同!!! 企業微信第三方應用與企業微信自建應用也不相同,一定要區分! !! 本地測試完成,沒問題了,直接提交上線,就OK啦!!!1.官網地址:https://work.weixin.qq
Mybatis學習之開發環境搭建(1)
什麼是mybatis MyBatis是支援普通SQL查詢,儲存過程和高階對映的優秀持久層框架。MyBatis消除了幾乎所有的JDBC程式碼和引數的手工設定以及結果集的檢索。MyBatis使用簡單的XML或註解用於配置和原始對映,將介面和Java的POJOs(Plan Old
用Html5/CSS3做Winform,一步一步教你搭建CefSharp開發環境(附JavaScript異步調用C#例子,及全部源代碼)上
轉載 界面設計 右鍵 異步 一個 由於 編寫 scrip 調用 本文為雞毛巾原創,原文地址:http://www.cnblogs.com/jimaojin/p/7077131.html,轉載請註明 CefSharp說白了就是Chromium瀏覽器的嵌入式核心,我們用此開發W