springboot-mybatis的使用和配置教程

一、運(yùn)行 springboot-mybatis 工程

git clone 下載工程 springboot-learning-example ,項(xiàng)目地址見(jiàn) GitHub。下面開(kāi)始運(yùn)行工程步驟(Quick Start):

公司主營(yíng)業(yè)務(wù):網(wǎng)站設(shè)計(jì)制作、網(wǎng)站制作、移動(dòng)網(wǎng)站開(kāi)發(fā)等業(yè)務(wù)。幫助企業(yè)客戶(hù)真正實(shí)現(xiàn)互聯(lián)網(wǎng)宣傳,提高企業(yè)的競(jìng)爭(zhēng)能力。創(chuàng)新互聯(lián)建站是一支青春激揚(yáng)、勤奮敬業(yè)、活力青春激揚(yáng)、勤奮敬業(yè)、活力澎湃、和諧高效的團(tuán)隊(duì)。公司秉承以“開(kāi)放、自由、嚴(yán)謹(jǐn)、自律”為核心的企業(yè)文化,感謝他們對(duì)我們的高要求,感謝他們從不同領(lǐng)域給我們帶來(lái)的挑戰(zhàn),讓我們激情的團(tuán)隊(duì)有機(jī)會(huì)用頭腦與智慧不斷的給客戶(hù)帶來(lái)驚喜。創(chuàng)新互聯(lián)建站推出臨潭免費(fèi)做網(wǎng)站回饋大家。

1. 數(shù)據(jù)庫(kù)準(zhǔn)備

a.創(chuàng)建數(shù)據(jù)庫(kù) springbootdb:

CREATE DATABASE springbootdb;

b.創(chuàng)建表 city :(因?yàn)槲蚁矚g徒步)

DROP TABLE IF EXISTS  `city`;
CREATE TABLE `city` (
  `id` int(10) unsigned NOT NULL AUTO_INCREMENT COMMENT '城市編號(hào)',
  `province_id` int(10) unsigned  NOT NULL COMMENT '省份編號(hào)',
  `city_name` varchar(25) DEFAULT NULL COMMENT '城市名稱(chēng)',
  `description` varchar(25) DEFAULT NULL COMMENT '描述',
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8;

c.插入數(shù)據(jù)

INSERT city VALUES (1 ,1,'溫嶺市','BYSocket 的家在溫嶺。');

2. 項(xiàng)目結(jié)構(gòu)介紹

項(xiàng)目結(jié)構(gòu)如下所示:

org.spring.springboot.controller - Controller 層
org.spring.springboot.dao - 數(shù)據(jù)操作層 DAO
org.spring.springboot.domain - 實(shí)體類(lèi)
org.spring.springboot.service - 業(yè)務(wù)邏輯層
Application - 應(yīng)用啟動(dòng)類(lèi)
application.properties - 應(yīng)用配置文件,應(yīng)用啟動(dòng)會(huì)自動(dòng)讀取配置

3. 改數(shù)據(jù)庫(kù)配置

打開(kāi) application.properties 文件, 修改相應(yīng)的數(shù)據(jù)源配置,比如數(shù)據(jù)源地址、賬號(hào)、密碼等。(如果不是用 MySQL,自行添加連接驅(qū)動(dòng) pom,然后修改驅(qū)動(dòng)名配置。)

4. 編譯工程

在項(xiàng)目根目錄 springboot-learning-example,運(yùn)行 maven 指令:

mvn clean install

5. 運(yùn)行工程

右鍵運(yùn)行 Application 應(yīng)用啟動(dòng)類(lèi)的 main 函數(shù),然后在瀏覽器訪問(wèn):

http://localhost:8080/api/city?cityName=溫嶺市

可以看到返回的 JSON 結(jié)果:

{
    "id": 1,
    "provinceId": 1,
    "cityName": "溫嶺市",
    "description": "我的家在溫嶺。"
}

二、springboot-mybatis 工程配置詳解

1.pom 添加 Mybatis 依賴(lài)

<!-- Spring Boot Mybatis 依賴(lài) -->
<dependency>
    <groupId>org.mybatis.spring.boot</groupId>
    <artifactId>mybatis-spring-boot-starter</artifactId>
    <version>${mybatis-spring-boot}</version>
</dependency>

整個(gè)工程的 pom.xml:

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>

    <groupId>springboot</groupId>
    <artifactId>springboot-mybatis</artifactId>
    <version>0.0.1-SNAPSHOT</version>
    <name>springboot-mybatis :: 整合 Mybatis Demo</name>

    <!-- Spring Boot 啟動(dòng)父依賴(lài) -->
    <parent>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-parent</artifactId>
        <version>1.5.1.RELEASE</version>
    </parent>

    <properties>
        <mybatis-spring-boot>1.2.0</mybatis-spring-boot>
        <mysql-connector>5.1.39</mysql-connector>
    </properties>

    <dependencies>

        <!-- Spring Boot Web 依賴(lài) -->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>

        <!-- Spring Boot Test 依賴(lài) -->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-test</artifactId>
            <scope>test</scope>
        </dependency>

        <!-- Spring Boot Mybatis 依賴(lài) -->
        <dependency>
            <groupId>org.mybatis.spring.boot</groupId>
            <artifactId>mybatis-spring-boot-starter</artifactId>
            <version>${mybatis-spring-boot}</version>
        </dependency>

        <!-- MySQL 連接驅(qū)動(dòng)依賴(lài) -->
        <dependency>
            <groupId>mysql</groupId>
            <artifactId>mysql-connector-java</artifactId>
            <version>${mysql-connector}</version>
        </dependency>

        <!-- Junit -->
        <dependency>
            <groupId>junit</groupId>
            <artifactId>junit</artifactId>
            <version>4.12</version>
        </dependency>
    </dependencies>
</project>

2.在 application.properties 應(yīng)用配置文件,增加 Mybatis 相關(guān)配置

# Mybatis 配置
mybatis.typeAliasesPackage=org.spring.springboot.domain
mybatis.mapperLocations=classpath:mapper/*.xml

mybatis.typeAliasesPackage 配置為 org.spring.springboot.domain,指向?qū)嶓w類(lèi)包路徑。mybatis.mapperLocations 配置為 classpath 路徑下 mapper 包下,* 代表會(huì)掃描所有 xml 文件。

mybatis 其他配置相關(guān)詳解如下:

mybatis.config = mybatis 配置文件名稱(chēng)
mybatis.mapperLocations = mapper xml 文件地址
mybatis.typeAliasesPackage = 實(shí)體類(lèi)包路徑
mybatis.typeHandlersPackage = type handlers 處理器包路徑
mybatis.check-config-location = 檢查 mybatis 配置是否存在,一般命名為 mybatis-config.xml
mybatis.executorType = 執(zhí)行模式。默認(rèn)是 SIMPLE

3.在 Application 應(yīng)用啟動(dòng)類(lèi)添加注解 MapperScan

Application.java 代碼如下:

/**
 * Spring Boot 應(yīng)用啟動(dòng)類(lèi)
 *
 * Created by bysocket on 16/4/26.
 */
// Spring Boot 應(yīng)用的標(biāo)識(shí)
@SpringBootApplication
// mapper 接口類(lèi)掃描包配置
@MapperScan("org.spring.springboot.dao")
public class Application {

    public static void main(String[] args) {
        // 程序啟動(dòng)入口
        // 啟動(dòng)嵌入式的 Tomcat 并初始化 Spring 環(huán)境及其各 Spring 組件
        SpringApplication.run(Application.class,args);
    }
}

mapper 接口類(lèi)掃描包配置注解 MapperScan :用這個(gè)注解可以注冊(cè) Mybatis mapper 接口類(lèi)。

4.添加相應(yīng)的 City domain類(lèi)、CityDao mapper接口類(lèi)

City.java:

/**
 * 城市實(shí)體類(lèi)
 *
 * Created by bysocket on 07/02/2017.
 */
public class City {

    /**
     * 城市編號(hào)
     */
    private Long id;

    /**
     * 省份編號(hào)
     */
    private Long provinceId;

    /**
     * 城市名稱(chēng)
     */
    private String cityName;

    /**
     * 描述
     */
    private String description;

    public Long getId() {
        return id;
    }

    public void setId(Long id) {
        this.id = id;
    }

    public Long getProvinceId() {
        return provinceId;
    }

    public void setProvinceId(Long provinceId) {
        this.provinceId = provinceId;
    }

    public String getCityName() {
        return cityName;
    }

    public void setCityName(String cityName) {
        this.cityName = cityName;
    }

    public String getDescription() {
        return description;
    }

    public void setDescription(String description) {
        this.description = description;
    }
}

CityDao.java:

/**
 * 城市 DAO 接口類(lèi)
 *
 * Created by bysocket on 07/02/2017.
 */
public interface CityDao {

    /**
     * 根據(jù)城市名稱(chēng),查詢(xún)城市信息
     *
     * @param cityName 城市名
     */
    City findByName(@Param("cityName") String cityName);
}

本文名稱(chēng):springboot-mybatis的使用和配置教程
鏈接分享:http://muchs.cn/article34/gjgese.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供虛擬主機(jī)、網(wǎng)站導(dǎo)航、靜態(tài)網(wǎng)站、電子商務(wù)手機(jī)網(wǎng)站建設(shè)、搜索引擎優(yōu)化

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶(hù)投稿、用戶(hù)轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話(huà):028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

外貿(mào)網(wǎng)站建設(shè)