SpingBoot整合Mybatis,這些小技巧你得知道,對你工做有很大的幫助!

如何使用SpingBoot整合Mybatis

SpringBoot 是由Pivotal 團隊提供的全新框架,其設計目的是用來簡化新Spring 應用的初始搭建以及開發過程。java

SpringBoot 的主要特色爲:

  • 建立獨立的Spring 應用程序
  • 嵌入到Tomcat,無需部署WAR 文件
  • 簡化Maven 配置
  • 自動配置Spring
  • 提供生產就緒型功能,如指標,健康檢查和外部配置
  • 絕對沒有代碼生成而且對XML 也沒有配置要求mysql

    開發環境的搭建

    JDK 的要求

    使用SpringBoot 必須使用JDK1.8 以上版本。web

開發工具

現在Java 語言開發使用最多的兩款IDE 軟件是Eclipse 和IDEA,Eclipse 實際包含Eclipse、MyEclipse、SpringTool Suite,前兩項你們很熟悉,而Spring Tool Suite 是爲開發spring 應用定製的eclipse,實際使用與Eclipse或MyEclipse 幾乎沒有區別,其中的特性可讓咱們的開發更加方便。本篇文章選用的是Spring Tool Suite 工具。
Spring Tool Suite 簡稱STS,下載地址爲:https://spring.io/tools,咱們選擇Windows 版本下載便可。
STS 爲綠色版,解壓以後能夠直接使用。面試

Maven 的要求:

項目管理工具推薦使用apache-maven-3.3.9 及以上版本。
準備工做已經作好,下面開始試試活怎麼樣spring

SpringBoot 集成Mybatis 只須要如下三步sql

  • 第一步:添加依賴;
  • 第二步:配置數據源;
  • 第三步:掃描接口包。
    詳細的集成步驟以下:
    參考的數據庫:數據庫

    /*建立數據庫springbootdb*/
    CREATE DATABASE /*!32312 IF NOT EXISTS*/`springbootdb` /*!40100 DEFAULT CHARACTER SET utf8
    */;
    USE `springbootdb`;
    /*建立表city*/
    DROP TABLE IF EXISTS `city`;
    CREATE TABLE `city` (
    `id` int(10) unsigned NOT NULL AUTO_INCREMENT COMMENT '城市編號',
    `provinceId` int(10) unsigned DEFAULT NULL COMMENT '省份編號',
    `cityName` varchar(20) DEFAULT NULL COMMENT '城市名稱',
    `description` text COMMENT '城市描述',
    PRIMARY KEY (`id`)
    ) ENGINE=InnoDB AUTO_INCREMENT=4 DEFAULT CHARSET=utf8;
    /*插入測試數據*/
    insert into `city`(`id`,`provinceId`,`cityName`,`description`) values (1,1,'北京','這是北京市的描述信
    息,北京這傢伙是中國首都,百年帝都,政治經濟文化中心,也將是世界的中心.'),(2,2,'鄭州','這是鄭
    州市的描述信息,鄭州這傢伙是河南省會,城市中的後起之秀,河南政治經濟文化中心,也是中國的
    中心城市.'),(3,3,'ZhengZhou','這是鄭州市的描述信息,鄭州這傢伙是河南省會,城市中的後起之秀,
    河南政治經濟文化中心,也是中國的中心城市.');
## 添加依賴;除了常規依賴外,須要加入Mybatis 和MySQL 依賴。

<properties>apache

<mybatis-spring-boot>1.2.0</mybatis-spring-boot>
<mysql-connector>5.1.39</mysql-connector>瀏覽器

</properties>springboot

<dependencies>
<!-- Spring Boot Mybatis 依賴-->
<dependency>
<groupId>org.mybatis.spring.boot</groupId>
<artifactId>mybatis-spring-boot-starter</artifactId>
<version>${mybatis-spring-boot}</version>
</dependency>
<!-- MySQL 鏈接驅動依賴-->
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>${mysql-connector}</version>
</dependency>
</dependencies>

##  在application.properties 配置文件中,配置數據源、Mybatis 的配置及映射文件。

數據源配置

spring.datasource.url=jdbc:mysql://localhost:3306/庫名
spring.datasource.username=root
spring.datasource.password=root
spring.datasource.driver-class-name=com.mysql.jdbc.Driver

Mybatis 配置

實體所在包,起別名

mybatis.typeAliasesPackage=org.spring.springboot.domain

映射文件所在路徑

mybatis.mapperLocations=classpath:mapper/*.xml

## 在主模塊上註解掃描接口包,使用@MapperScan(「包名」)。

@SpringBootApplication // Spring Boot 應用的標識
@MapperScan("org.spring.springboot.dao") // mapper 接口類掃描包配置
//若是要顯示Sql 細節還須要在logback 配置<logger name="接口類所在包" level="debug" />
public class Application {
public static void main(String[] args) {
// 程序啓動入口
// 啓動嵌入式的Tomcat 並初始化Spring 環境及其各Spring 組件
SpringApplication.run(Application.class,args);
}
}

>寫到這裏,首先要恭喜你一下你立刻就能夠實現你心中所想的事情,咱們接着往下看。

# entity

package com.zyz.entity;

public class City {

private Integer id;
private Integer provinceId;
private String cityName;
private String description;
public Integer getId() {
    return id;
}
public void setId(Integer id) {
    this.id = id;
}
public Integer getProvinceId() {
    return provinceId;
}
public void setProvinceId(Integer 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;
}
public City(Integer id, Integer provinceId, String cityName, String description) {
    super();
    this.id = id;
    this.provinceId = provinceId;
    this.cityName = cityName;
    this.description = description;
}
public City() {
    super();
}
@Override
public String toString() {
    return "City [id=" + id + ", provinceId=" + provinceId + ", cityName=" + cityName + ", description="
            + description + "]";
}

}

# dao

package com.zyz.dao;

import java.util.List;

import com.zyz.entity.City;

public interface CityDao {

public List<City> getall();

}

# controller

package com.zyz.controller;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

import com.zyz.dao.CityDao;

@RestController
public class HelloController {

@Autowired
CityDao citydao;
@RequestMapping("/hello")
public String hello() {
    return ""+citydao.getall();
}

}

# 項目結構圖
![](https://upload-images.jianshu.io/upload_images/23140115-589cbc2b072e27e6.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)

還差最後一步

>打開咱們的瀏覽器,啓動咱們的項目,而後訪問

最後出現這樣,說明你成功了


![](https://upload-images.jianshu.io/upload_images/23140115-e98bb0abfd88aa8c.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
# 最後
在文章的最後做者爲你們整理了不少資料!包括java核心知識點+全套架構師學習資料和視頻+一線大廠面試寶典+面試簡歷模板+阿里美團網易騰訊小米愛奇藝快手嗶哩嗶哩面試題+Spring源碼合集+Java架構實戰電子書等等!
若有須要的朋友歡迎關注公衆號:前程有光,領取!
相關文章
相關標籤/搜索