Mark3 項(xiàng)目記錄---0x02 整合mybatis

其實(shí),只要在創(chuàng)建工程那里,找到mybatis這個(gè)選項(xiàng),打上勾,或者說(shuō),后續(xù)在porm.xml,懟上以下的maven依賴(lài),然后,再在Application運(yùn)行類(lèi)上,再加上一個(gè)注解,用于掃描mapper包,整配置就結(jié)束了。
簡(jiǎn)單又粗暴,除此以外,沒(méi)有其他言語(yǔ)可以形容了


  • Mark3Application.java
//basePackages 是mapper所在的包的路徑
@MapperScan(basePackages = "com.m1.dao.mapper")
@SpringBootApplication
public class Mark3Application {
    public static void main(String[] args) {
        SpringApplication.run(Mark3Application.class, args);
    }
}
  • porm.xml
<dependency>
    <groupId>org.mybatis.spring.boot</groupId>
    <artifactId>mybatis-spring-boot-starter</artifactId>
    <version>1.3.0</version>
</dependency>
<dependency>
    <groupId>mysql</groupId>
    <artifactId>mysql-connector-java</artifactId>
    <scope>runtime</scope>
</dependency>
  • application.properties 添加以下兩行
# 實(shí)體類(lèi)映射路徑
mybatis.type-aliases-package=com.m1.common.bean
#mapper的xml路徑
mybatis.mapper-locations=classpath:mapper/*.xml

生成mapper和xml

關(guān)于這一塊,有三種方式

  • 手撕xml
    顧名思義,初期學(xué)習(xí)或者特殊需求,可以這么做。手寫(xiě)接口與傳入?yún)?shù),寫(xiě)sql,可以熟悉mybatis最核心的精髓,就是多了一點(diǎn)if,for等語(yǔ)句,trim等字符拼接,以及數(shù)據(jù)類(lèi)型映射;按業(yè)務(wù)需求靈活控制SQL。

但是,有一位同事在做一個(gè)新的模塊,大約涉及到了20多張表,然后他哭了....
----每張表CRUD四個(gè)功能,有部分特別的業(yè)務(wù)要另寫(xiě)sql

  • 生成器

機(jī)械化的東西,當(dāng)然是要留給機(jī)器去做-------湯姆.貓

使用自動(dòng)生成工具還有另一個(gè)好處,除了mapper,xml,實(shí)體類(lèi)外,它會(huì)生成一個(gè)beanExample的類(lèi),用于查詢(xún)條件查詢(xún),但是,最常用的分頁(yè)查詢(xún)卻沒(méi)有。所以用這個(gè)來(lái)解決 mybatis分頁(yè)插件

到這,springboot對(duì)原生mybatis3的操作就結(jié)束了。

額外加料,連接池

連接池有很多種,比較流行的有c3p0,dbcp,BoneCP,druid等,我必須選druid啊,因?yàn)槭煜?/del>


官方springBoot 配置點(diǎn)這里

但我配置的時(shí)候,遇到一個(gè)問(wèn)題,阿里官方的1.0.29-SNAPSHOT這個(gè)版本的druid-spring-boot-starter maven中央倉(cāng)庫(kù)依賴(lài)無(wú)法下載,后面我直接在maven倉(cāng)庫(kù),再?gòu)男抡伊艘粋€(gè)

    <!-- https://mvnrepository.com/artifact/com.cuisongliu/druid-spring-boot-starter -->
        <dependency>
            <groupId>com.cuisongliu</groupId>
            <artifactId>druid-spring-boot-starter</artifactId>
            <version>1.0.31.05</version>
        </dependency>

隨后按照需求,自定義配置application.properties,參數(shù)什么的,上面的鏈接就有說(shuō)明

單元測(cè)試如下:

@RunWith(SpringRunner.class)
@SpringBootTest
public class Mark3ApplicationTests {
    @Autowired
    private TMemberMapper memberMapper;

    @Test
    public void TestQueryOneMember() {
        TMember member = memberMapper.selectByPrimaryKey(2004521637939200L);
        Assert.assertEquals(new Long(2004521637939200L), member.getMemberId());
        System.out.println(member);
    }
}

項(xiàng)目地址
代碼下載

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • Spring Boot 參考指南 介紹 轉(zhuǎn)載自:https://www.gitbook.com/book/qbgb...
    毛宇鵬閱讀 47,288評(píng)論 6 342
  • Spring 技術(shù)筆記Day 1 預(yù)熱知識(shí)一、 基本術(shù)語(yǔ)Blob類(lèi)型,二進(jìn)制對(duì)象Object Graph:對(duì)象圖...
    OchardBird閱讀 1,087評(píng)論 0 2
  • 今天由于項(xiàng)目需要,簡(jiǎn)單的配置了一下ssm框架,maven配置所需包,可直接粘貼復(fù)制 maven依賴(lài) <depend...
    胡GaQue閱讀 807評(píng)論 0 4
  • 一、配置maven的pom.xml加載jar包 為了后續(xù)開(kāi)發(fā)的方便,將SSM框架所有需要的jar包一并加載進(jìn)來(lái) p...
    docki閱讀 2,419評(píng)論 1 23
  • Spring Cloud為開(kāi)發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見(jiàn)模式的工具(例如配置管理,服務(wù)發(fā)現(xiàn),斷路器,智...
    卡卡羅2017閱讀 136,697評(píng)論 19 139

友情鏈接更多精彩內(nèi)容