SpringBoot系列:1.快速搭建web api項目

內容概述

SpringBoot最多見得用途就是web api項目。前端

本文介紹使用自動配置功能,經過最簡潔的pom依賴,快速搭建一個示例項目。java

實現的功能爲:接收http請求並返回json格式的數據。mysql

1. 須要的pom依賴

SpringBoot的一大特點就是自動配置,經過自動配置,能夠極大簡化pom.xml,和代碼量。git

一個簡單的web api項目須要的功能是:處理http請求,讀寫mysql。
在實際項目中,基本都會使用mysql鏈接池和sql解析工具,提升性能和開發效率。這裏使用了druid + mybatis-plusweb

按照約定,自動配置的包名稱通常包含starter。本項目中使用的starter以下:spring

  • web的starter,包括對tomcat的自動配置,由於項目中使用了Springboot的parent,因此這裏不用指定版本
<dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-starter-web</artifactId>
</dependency>
  • druid的starter,用來自動配置鏈接池,用於mysql的鏈接
<dependency>
    <groupId>com.alibaba</groupId>
    <artifactId>druid-spring-boot-starter</artifactId>
    <version>1.2.1</version>
</dependency>
  • mybatis-plus的starter,用來加載mapper類等依賴
<dependency>
    <groupId>com.baomidou</groupId>
    <artifactId>mybatis-plus-boot-starter</artifactId>
    <version>3.3.1</version>
</dependency>

2. 配置信息

使用自動配置時,通常經過SpringBoot的配置文件application.yml,自定義各類參數。
本項目中用到的配置爲mysql鏈接信息web項目啓動端口,具體以下:sql

spring:
  datasource:
    druid:
      url: jdbc:mysql://localhost:3306/test_db?zeroDateTimeBehavior=convertToNull&useUnicode=true&characterEncoding=UTF-8&serverTimezone=UTC
      username: root
      password: 123456

server:
  port: 8999
  • 經過使用druid-spring-boot-starter,啓動時會根據mysql配置,自動生成鏈接,用於mysql訪問。
  • port指定web訪問的端口,api項目中一般會選擇非80端口

3. 代碼說明

爲了提升開發效率,項目中使用mybatis-plus-generator,生成讀寫表所需的entity,mapper和service類。json

爲了與前端開發更有效的配置,一般web api項目中會使用一個統一返回類來控制返回值格式,保證接口返回的格式統一。api

除了生成的代碼外,項目中只須要實現統一格式類CommonResVo,和控制器類UserController便可提供api訪問,目錄以下:tomcat

alt

源碼地址:https://gitee.com/dothetrick/...

以上內容屬我的學習總結,若有不當之處,歡迎在評論中指正

相關文章
相關標籤/搜索