摘要:核心流程三大階段縷清思路也就是核心流程之后,我們就開(kāi)始寫(xiě)代碼了,詳見(jiàn)下節(jié)
Mybatis快速入門(mén)
步驟:
1.加入mybatis的依賴
2.添加Mybatis的配置文件
3.場(chǎng)景介紹
4.編寫(xiě)實(shí)體類(lèi)丶mapper接口及mapper.xml文件
5.編寫(xiě)測(cè)試代碼
demo:
public class TUser { private Integer id; private String userName; private String realName; private Byte sex; private String mobile; private String email; private String note; private Integer positionId; public Integer getId() { return id; } public void setId(Integer id) { this.id = id; } public String getUserName() { return userName; } public void setUserName(String userName) { this.userName = userName; } public String getRealName() { return realName; } public void setRealName(String realName) { this.realName = realName; } public Byte getSex() { return sex; } public void setSex(Byte sex) { this.sex = sex; } public String getMobile() { return mobile; } public void setMobile(String mobile) { this.mobile = mobile; } public String getEmail() { return email; } public void setEmail(String email) { this.email = email; } public String getNote() { return note; } public void setNote(String note) { this.note = note; } public Integer getPositionId() { return positionId; } public void setPositionId(Integer positionId) { this.positionId = positionId; } }
mapper接口:
public interface TUserMapper { TUser selectByPrimaryKey(Integer id); }
TUserMapper.xml:
mybatis-config.xml:
db.properties:
jdbc_driver=com.mysql.jdbc.Driver jdbc_url=jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=utf8&allowMultiQueries=true jdbc_username=root jdbc_password=qq997921
測(cè)試類(lèi):
public class MybatisQuickStart { private SqlSessionFactory sqlSessionFactory; @Test // 快速入門(mén) public void quickStart() throws IOException { //-------------第一階段------------- // 1.讀取mybatis配置文件創(chuàng)SqlSessionFactory String resource = "mybatis-config.xml"; InputStream inputStream = Resources.getResourceAsStream(resource); sqlSessionFactory = new SqlSessionFactoryBuilder().build(inputStream); inputStream.close(); //-------------第二階段------------- // 2.獲取sqlSession SqlSession sqlSession = sqlSessionFactory.openSession(); // 3.獲取對(duì)應(yīng)mapper TUserMapper mapper = sqlSession.getMapper(TUserMapper.class); //-------------第三階段------------- // 4.執(zhí)行查詢語(yǔ)句并返回結(jié)果 TUser user = mapper.selectByPrimaryKey(1); System.out.println(user.toString()); }
}
Mybatis兩種編程模型1.封裝了iBatis編程模型,使用sqlSession對(duì)外提供數(shù)據(jù)庫(kù)的訪問(wèn)
比如使用sqlSession直接訪問(wèn)數(shù)據(jù)庫(kù),代碼如:
User user1 = session.selectOne("com.XX.XX.XXMapper.selectOneByKey","1");
2.使用mapper接口編程,就可以訪問(wèn)數(shù)據(jù)庫(kù)
UserMapper userMapper = session.getMapper(UserMapper.class); User user = userMapper.selectByPrimaryKey(1);
對(duì)比兩種模型
第一種缺點(diǎn):代碼里面會(huì)很多硬編碼,硬編碼不好維護(hù),代碼不優(yōu)雅,并且selectOne方法名稱(chēng)沒(méi)有業(yè)務(wù)含義.
優(yōu)先選擇mapper接口編程。
Mybatis核心流程三大階段縷清思路也就是Mybatis核心流程之后,我們就開(kāi)始寫(xiě)代碼了,詳見(jiàn)下節(jié)~~
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/74454.html
摘要:三大巨頭結(jié)果集再通過(guò)反射機(jī)制映射到對(duì)象上面,便做好了數(shù)據(jù)的映射關(guān)于映射具體內(nèi)容可查閱資料及源碼到這我們已經(jīng)完成了一個(gè)簡(jiǎn)易的框架了通過(guò)手寫(xiě)一個(gè)簡(jiǎn)單的框架,我們就可以看得懂源碼了,學(xué)習(xí)框架設(shè)計(jì)的思路并且增強(qiáng)我們的內(nèi)功 簡(jiǎn)化版Mybatis實(shí)現(xiàn)思路 1.創(chuàng)建SqlSessionFactory實(shí)例. 2.實(shí)例化過(guò)程中,加載配置文件創(chuàng)建configuration對(duì)象. 3.通過(guò)factory創(chuàng)...
摘要:邊界清晰,有利于理解開(kāi)發(fā)測(cè)試和部署。前后端分離考慮到目前開(kāi)發(fā)流行前后端分離,為了適應(yīng)潮流,引入前后端分離的約束。該請(qǐng)求被接受處理,但是該處理是不完整的。 本文欲回答這樣一個(gè)問(wèn)題:在 「特定環(huán)境 」下,如何規(guī)劃Web開(kāi)發(fā)框架,使其能滿足 「期望 」? 假設(shè)我們的「特定環(huán)境 」如下: 技術(shù)層面 使用Java語(yǔ)言進(jìn)行開(kāi)發(fā) 通過(guò)Maven構(gòu)建 基于SpringBoot 使用Intelli...
摘要:前言嗨,小伙伴們,這篇博文將帶大家手寫(xiě),讓大家對(duì)的核心原理以及工作流程有更加深刻的理解。模塊顧名思義,就是框架配置類(lèi),用于解析配置文件加載相關(guān)環(huán)境。配置模塊這里的對(duì)框架的配置使用了簡(jiǎn)單的,主要原因還是簡(jiǎn)單易懂然后節(jié)省時(shí)間。 前言 (????)??嗨,小伙伴們,這篇博文將帶大家手寫(xiě)mybatis,讓大家對(duì)mybaits的核心原理以及工作流程有更加深刻的理解。在上篇Spring-Mybat...
摘要:基本綱要組成動(dòng)態(tài)配置配置核心源碼分析源碼解析源碼解析源碼解析源碼解析手寫(xiě)框架是什么本質(zhì)是一種半自動(dòng)的框架,前身是其源于和的組合,除了和映射關(guān)系之外,還需要編寫(xiě)語(yǔ)句映射三要素映射規(guī)則快速入門(mén)加入的依賴添加的配置文件場(chǎng)景介紹編寫(xiě)實(shí)體類(lèi)接口以及文 showImg(https://segmentfault.com/img/bVblrnC); Mybatis基本綱要 Mybatis組成 · 動(dòng)態(tài)...
摘要:通過(guò)整合及可以實(shí)現(xiàn)數(shù)據(jù)庫(kù)查詢后將數(shù)據(jù)持久化。但是可能出現(xiàn)幻像讀這是花費(fèi)最高代價(jià)但是最可靠的事務(wù)隔離級(jí)別。事務(wù)被處理為順序執(zhí)行。 所需技術(shù):spring、mybatis、druid、flyway、logback、nodejs、html、css3 ;目標(biāo):創(chuàng)建一個(gè)業(yè)務(wù)框架,后端采用spring+mybatis,中間層采用node,前端html5,css3等; showImg(https:/...
閱讀 2444·2021-09-22 15:41
閱讀 1456·2021-08-19 10:54
閱讀 1767·2019-08-23 15:11
閱讀 3406·2019-08-23 10:23
閱讀 1434·2019-08-22 16:28
閱讀 804·2019-08-22 15:11
閱讀 746·2019-08-22 14:53
閱讀 720·2019-08-22 13:49