springboot整合mybatis

1.導(dǎo)入依賴和數(shù)據(jù)庫驅(qū)動(新建項目的時候若是有勾選可以跳過這一步)
<dependency>
    <groupId>org.mybatis.spring.boot</groupId>
    <artifactId>mybatis-spring-boot-starter</artifactId>
    <version>3.0.0</version>
</dependency>
<dependency>
    <groupId>mysql</groupId>
    <artifactId>mysql-connector-java</artifactId>
    <version>5.1.49</version>
</dependency>
2.配置數(shù)據(jù)源和mybatis
spring:
  datasource:
    url: jdbc:mysql://localhost:3306/test1
    username: root
    password: root
    driver-class-name: com.mysql.jdbc.Driver

mybatis:
  #config-location: classpath:mybatis/mybatis-config.xml #全局配置文件
  mapper-locations: classpath:mapper/*.xml #全局映射文件
  configuration: #和全局配置文件沖突轻掩,可以不寫全局配置文件幸乒,所有配置寫在configuration下面
    map-underscore-to-camel-case: true #駝峰命名策略
3.編寫Mapper接口
package com.szg.boot.mapper;
import com.szg.boot.bean.Pet;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Select;

//若是在主程序入口配置@MapperScan("com.szg.boot.mapper"),這個注解可以不用配置
@Mapper
public interface PetMapper {

    //注解版
    @Select("select * from  pet where  id=#{id}")
    public Pet getPet(Long id);

    //配置文件版
    public void insertPet(Pet pet);
}
4.編寫Mapper映射配置文件
<?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.szg.boot.mapper.PetMapper">
    <!--配置自增屬性也返回-->
    <insert id="insertPet" useGeneratedKeys="true" keyProperty="id">
        insert into pet(`name`,`weight`) values(#{name}, #{weight})
    </insert>

</mapper>
5.編寫service類
package com.szg.boot.service;
import com.szg.boot.bean.Pet;
import com.szg.boot.mapper.PetMapper;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;

@Service
public class PetService {

    @Autowired
    PetMapper petMapper;

    public Pet getPetById(Long id) {
        return petMapper.getPet(id);
    }

    public void savePet(Pet pet) {
        petMapper.insertPet(pet);
    }
}
6.編寫Controller接口
package com.szg.boot.controller;
import com.szg.boot.bean.Pet;
import com.szg.boot.service.PetService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;

@RestController
public class PetController {

    @Autowired
    PetService petService;

    @GetMapping("pet")
    public Pet getById(@RequestParam("id") Long id) {
        return petService.getPetById(id);
    }

    @PostMapping("savePet")
    public Pet savePet(Pet pet) {
        petService.savePet(pet);
        return pet;
    }
}
注:controller調(diào)用service唇牧,service調(diào)用mapper
目錄結(jié)構(gòu).png
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末罕扎,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子丐重,更是在濱河造成了極大的恐慌腔召,老刑警劉巖,帶你破解...
    沈念sama閱讀 221,198評論 6 514
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件扮惦,死亡現(xiàn)場離奇詭異臀蛛,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)径缅,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,334評論 3 398
  • 文/潘曉璐 我一進(jìn)店門掺栅,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人纳猪,你說我怎么就攤上這事√殷希” “怎么了氏堤?”我有些...
    開封第一講書人閱讀 167,643評論 0 360
  • 文/不壞的土叔 我叫張陵,是天一觀的道長。 經(jīng)常有香客問我鼠锈,道長闪檬,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 59,495評論 1 296
  • 正文 為了忘掉前任购笆,我火速辦了婚禮粗悯,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘同欠。我一直安慰自己样傍,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 68,502評論 6 397
  • 文/花漫 我一把揭開白布铺遂。 她就那樣靜靜地躺著衫哥,像睡著了一般。 火紅的嫁衣襯著肌膚如雪襟锐。 梳的紋絲不亂的頭發(fā)上撤逢,一...
    開封第一講書人閱讀 52,156評論 1 308
  • 那天,我揣著相機(jī)與錄音粮坞,去河邊找鬼蚊荣。 笑死,一個胖子當(dāng)著我的面吹牛莫杈,可吹牛的內(nèi)容都是我干的互例。 我是一名探鬼主播,決...
    沈念sama閱讀 40,743評論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼姓迅,長吁一口氣:“原來是場噩夢啊……” “哼敲霍!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起丁存,我...
    開封第一講書人閱讀 39,659評論 0 276
  • 序言:老撾萬榮一對情侶失蹤肩杈,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后解寝,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體扩然,經(jīng)...
    沈念sama閱讀 46,200評論 1 319
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡另患,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,282評論 3 340
  • 正文 我和宋清朗相戀三年氏捞,在試婚紗的時候發(fā)現(xiàn)自己被綠了炮姨。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片见芹。...
    茶點(diǎn)故事閱讀 40,424評論 1 352
  • 序言:一個原本活蹦亂跳的男人離奇死亡松却,死狀恐怖辕近,靈堂內(nèi)的尸體忽然破棺而出介褥,到底是詐尸還是另有隱情吮廉,我是刑警寧澤逾礁,帶...
    沈念sama閱讀 36,107評論 5 349
  • 正文 年R本政府宣布说铃,位于F島的核電站,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏腻扇。R本人自食惡果不足惜债热,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,789評論 3 333
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望幼苛。 院中可真熱鬧窒篱,春花似錦、人聲如沸舶沿。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,264評論 0 23
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽暑椰。三九已至霍转,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間一汽,已是汗流浹背避消。 一陣腳步聲響...
    開封第一講書人閱讀 33,390評論 1 271
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留召夹,地道東北人岩喷。 一個月前我還...
    沈念sama閱讀 48,798評論 3 376
  • 正文 我出身青樓,卻偏偏與公主長得像监憎,于是被迫代替她去往敵國和親纱意。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,435評論 2 359

推薦閱讀更多精彩內(nèi)容