使用Java怎么實(shí)現(xiàn)MyBatis接口編程?相信很多沒有經(jīng)驗(yàn)的人對(duì)此束手無策,為此本文總結(jié)了問題出現(xiàn)的原因和解決方法,通過這篇文章希望你能解決這個(gè)問題。
為屯溪等地區(qū)用戶提供了全套網(wǎng)頁設(shè)計(jì)制作服務(wù),及屯溪網(wǎng)站建設(shè)行業(yè)解決方案。主營業(yè)務(wù)為成都網(wǎng)站設(shè)計(jì)、做網(wǎng)站、屯溪網(wǎng)站設(shè)計(jì),以傳統(tǒng)方式定制建設(shè)網(wǎng)站,并提供域名空間備案等一條龍服務(wù),秉承以專業(yè)、用心的態(tài)度為用戶提供真誠的服務(wù)。我們深信只要達(dá)到每一位用戶的要求,就會(huì)得到認(rèn)可,從而選擇與我們長期合作。這樣,我們也可以走得更遠(yuǎn)!
要求:
1.配置文件的namespace名稱空間指定為接口的全類名
2.配置文件中的id唯一標(biāo)識(shí)與接口中的方法對(duì)應(yīng)(返回值類型對(duì)應(yīng),方法名對(duì)應(yīng),參數(shù)個(gè)數(shù)和類型對(duì)應(yīng))
接口代碼:
package com.bird.mybatis.dao; import com.bird.mybatis.bean.Employee; public interface EmployeeMapper { public Employee getEmpById(Integer id); }
對(duì)應(yīng)配置文件代碼:
<?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"> <!-- namespace:名稱空間(若使用接口式編程,與EmployeeMapper接口全類名一致) id:唯一標(biāo)識(shí)(與接口中的方法名對(duì)應(yīng)) resultType:返回值類型(與對(duì)應(yīng)方法的返回值對(duì)應(yīng)) #{id}:從傳遞過來的參數(shù)中取出id值 --> <mapper namespace="com.bird.mybatis.dao.EmployeeMapper"> <select id="getEmpById" resultType="com.bird.mybatis.bean.Employee"> select id,last_name lastName,gender,email from tbl_employee where id = #{id} </select> </mapper>
測試代碼:
/** * MyBatis接口編程 * @throws IOException */ @Test void test2() throws IOException { //獲取sqlSessionFactory對(duì)象 SqlSessionFactory ssf = getSqlSessionFactory(); //獲取sqlSession對(duì)象 SqlSession openSession = ssf.openSession(); try { //獲取接口的實(shí)現(xiàn)類對(duì)象 EmployeeMapper mapper = openSession.getMapper(EmployeeMapper.class); Employee empById = mapper.getEmpById(1); System.out.println(empById); }finally { openSession.close(); } } /** * 獲取sqlSessionFactory對(duì)象 * @throws IOException */ public static SqlSessionFactory getSqlSessionFactory() throws IOException { String resource = "mybatis-config.xml"; InputStream is = Resources.getResourceAsStream(resource); return new SqlSessionFactoryBuilder().build(is); }
總結(jié):
1.接口編程:
原生接口: Dao ===> DaoImpl
MyBatis: Dao ===> Mapper.xml
2. SqlSession代表與數(shù)據(jù)庫的一次會(huì)話,用完要關(guān)閉
3. SqlSession和Connection都是非線程安全的,所以每次都要獲取新的對(duì)象,而不能寫成成員變量
4.mapper接口沒有實(shí)現(xiàn)類,但是MyBatis生成代理對(duì)象
看完上述內(nèi)容,你們掌握使用Java怎么實(shí)現(xiàn)MyBatis接口編程的方法了嗎?如果還想學(xué)到更多技能或想了解更多相關(guān)內(nèi)容,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝各位的閱讀!
網(wǎng)站欄目:使用Java怎么實(shí)現(xiàn)MyBatis接口編程
網(wǎng)站網(wǎng)址:http://www.rwnh.cn/article12/pcocgc.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供電子商務(wù)、搜索引擎優(yōu)化、商城網(wǎng)站、自適應(yīng)網(wǎng)站、企業(yè)建站、服務(wù)器托管
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)