欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

springboot+swagger2.10.5+mybatis-plus 入門詳解

 更新時(shí)間:2020年12月25日 11:33:32   作者:gopyja  
這篇文章主要介紹了springboot+swagger2.10.5+mybatis-plus 入門,本文通過實(shí)例圖文相結(jié)合給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下

最新idea2020安裝部署超詳細(xì)教程

懂得懂的

2020.3

2020.2.4

2020.2.3

2020.2.2

20.2.1

2019.3

2018.3

最新2020永久

springboot簡(jiǎn)介:

個(gè)人對(duì)springboot的一點(diǎn)小的理解:

1.最大優(yōu)勢(shì):簡(jiǎn)化配置

區(qū)別于傳統(tǒng)的 MVC 模式,對(duì)于配置進(jìn)行了大量的簡(jiǎn)化,魔鬼注解:SpringBootApplication 中包含了的注解

@SpringBootConfiguration
	@EnableAutoConfiguration
	@ComponentScan

基本包含了傳統(tǒng)項(xiàng)目啟動(dòng)所需要的注解

2.將原始的 tomcat 等 web 容器默認(rèn)引入,不需要配置 web 容器

2020-12-23 14:56:23.683 INFO 11124 --- [main] c.l.d.DataStandardApplication : The following profiles are active: dev
2020-12-23 14:56:24.871 INFO 11124 --- [main] o.s.b.w.embedded.tomcat.TomcatWebServer : Tomcat initialized with port(s): 8080 (http)
2020-12-23 14:56:24.877 INFO 11124 --- [main] o.apache.catalina.core.StandardService : Starting service [Tomcat]

可以看出 默認(rèn)選取 tomcat 為 web 啟用容器。

開始簡(jiǎn)單搭建:

0.所屬環(huán)境:

1.jdk環(huán)境,

在cmd后天輸入: java -version 查看是否為jdk1.8版本以上(個(gè)人建議1.8,目前穩(wěn)定版本有1.8 1.11和1.14 版本)

C:\Users\hzp>java -version
java version "1.8.0_251"
Java(TM) SE Runtime Environment (build 1.8.0_251-b08)
Java HotSpot(TM) 64-Bit Server VM (build 25.251-b08, mixed mode)

如果沒有出現(xiàn),可以到 oracle 官網(wǎng)下載 jdk,官網(wǎng)地址:JDK官網(wǎng)下載地址,但是需要 oracle 賬號(hào),當(dāng)然你可以直接從我的網(wǎng)盤下載:
Linux系統(tǒng)jdk1.8網(wǎng)盤地址,

鏈接: https://pan.baidu.com/s/1IS0e-rSleFzW5YHo0aTMPw

提取碼: ktmd

windows 系統(tǒng)jdk1.8網(wǎng)盤地址,

鏈接: https://pan.baidu.com/s/1RGThC5gvbX3LjHA3nc8pHQ

提取碼: d23k

可以自行百度進(jìn)行jdk安裝和配置,此處不做詳細(xì)介紹。

2.開發(fā)工具 idea

去官網(wǎng)下載,建議下載低2個(gè)大版本的,因?yàn)榫W(wǎng)上pojie版本很少找到新版本pojie的方法。
下載地址:idea下載地址
建議下載一個(gè)版本的 idea 如圖:

目前版本為2020.3,建議選擇版本為 2020.2及以后版本

目前版本為2020.3,建議選擇版本為 2020.2及以后版本

3.maven 環(huán)境,

建議安裝一下 maven 環(huán)境,便于從國(guó)內(nèi)鏡像地址 aliyun 下載。

下載 maven 的地址,建議下載 3.6.1maven3下載地址
安裝 maven 進(jìn)行配置(此處不做詳細(xì)介紹)
配置完成后在終端輸入: mvn -v

C:\Users\hzp>mvn -v
Apache Maven 3.6.3 (cecedd343002696d0abb50b32b541b8a6ba2883f)
Maven home: H:\apache-maven-3.6.3\bin\..
Java version: 1.8.0_251, vendor: Oracle Corporation, runtime: H:\Java\jdk1.8.0_251\jre
Default locale: zh_CN, platform encoding: GBK
OS name: "windows 10", version: "10.0", arch: "amd64", family: "windows"

對(duì) settings.xml 進(jìn)行配置(我的maven在F盤,H:\apache-maven-3.6.3\conf 為settings),將mirrors替換如下,詳細(xì)配置如下:

<mirrors>
	<mirror>
	 <id>aliyunmaven</id>
	 <mirrorOf>*</mirrorOf>
	 <name>阿里云公共倉(cāng)庫</name>
	 <url>https://maven.aliyun.com/repository/central</url>
	</mirror>
		<mirror>
 <id>nexus-aliyun</id>
 <mirrorOf>central</mirrorOf>
 <name>Nexus aliyun</name>
 <url>https://maven.aliyun.com/repository/public</url>
 </mirror>
	<mirror>
		<id>aliyunmaven</id>
		<mirrorOf>*</mirrorOf>
		<name>阿里云spring插件倉(cāng)庫</name>
		<url>https://maven.aliyun.com/repository/spring-plugin</url>
	</mirror>

	<mirror> 
		<id>repo2</id> 
		<name>Mirror from Maven Repo2</name> 
		<url>https://repo.spring.io/plugins-release/</url> 
		<mirrorOf>central</mirrorOf> 
	</mirror>
 </mirrors>

打開 idea 從 左上角 file 中找到 Settings 對(duì) maven 進(jìn)行配置,如圖:

settings.xml

1.開始搭建項(xiàng)目

1.打開idea,找到最左邊的 file ,點(diǎn)擊file,然后選擇 new ,再選擇右邊的 Project ,如下圖:

選擇file,然后點(diǎn)擊new,在選擇 project

選擇后出現(xiàn)如下圖片:

選擇紅色方框

點(diǎn)擊選擇紅色方框:

springboot初始化

點(diǎn)擊next進(jìn)行下一步選擇:

項(xiàng)目名字和jdk選擇

選擇后點(diǎn)擊 Next 下一步:

此處選擇的結(jié)果

按照?qǐng)D片顯示的方法進(jìn)行選擇開發(fā)所需要的依賴,點(diǎn)擊 next .進(jìn)行project名稱的選擇,也可以選擇直接點(diǎn)擊 finish,如圖:

項(xiàng)目名稱

項(xiàng)目的初步架子已經(jīng)搭建起來了。

2.等待項(xiàng)目從aliyun下載依賴。

大概要等待 1-3分鐘,根據(jù)自己的網(wǎng)絡(luò)快慢決定。

1.出現(xiàn)的 pom.xml 如下圖所示:

<properties>
 <java.version>1.8</java.version>
 </properties>

 <dependencies>
 <dependency>
 <groupId>org.springframework.boot</groupId>
 <artifactId>spring-boot-starter-web</artifactId>
 </dependency>

 <dependency>
 <groupId>mysql</groupId>
 <artifactId>mysql-connector-java</artifactId>
 <scope>runtime</scope>
 </dependency>
 <dependency>
 <groupId>org.projectlombok</groupId>
 <artifactId>lombok</artifactId>
 <optional>true</optional>
 </dependency>
 <dependency>
 <groupId>org.springframework.boot</groupId>
 <artifactId>spring-boot-starter-test</artifactId>
 <scope>test</scope>
 <exclusions>
 <exclusion>
 <groupId>org.junit.vintage</groupId>
 <artifactId>junit-vintage-engine</artifactId>
 </exclusion>
 </exclusions>
 </dependency>
 </dependencies>

此時(shí)的以來主要文件,下面引入 mybatis-plus 3.3.2 版本:

 <dependency>
 <groupId>com.baomidou</groupId>
 <artifactId>mybatis-plus-boot-starter</artifactId>
 <version>3.3.2</version>
 </dependency>

將上面的文件復(fù)制放入到 MySQL 依賴后面(主要是放在dependencies里面都可以)

然后安裝官網(wǎng)給定的分頁配置,在文件中建立一個(gè)config ,結(jié)構(gòu)如圖:

再創(chuàng)建一個(gè)MybatisPlusConfig

再創(chuàng)建一個(gè)MybatisPlusConfig.java,具體代碼如下:

import com.baomidou.mybatisplus.core.injector.DefaultSqlInjector;
import com.baomidou.mybatisplus.core.injector.ISqlInjector;
import com.baomidou.mybatisplus.extension.plugins.PaginationInterceptor;
import com.baomidou.mybatisplus.extension.plugins.pagination.optimize.JsqlParserCountOptimize;
import org.springframework.context.annotation.Bean;

/**
 * @author hzp
 */
public class MybatisPlusConfig {

 /**
 * 分頁插件
 */
 @Bean
 public PaginationInterceptor paginationInterceptor() {
 PaginationInterceptor paginationInterceptor = new PaginationInterceptor();
 // 設(shè)置請(qǐng)求的頁面大于最大頁后操作, true調(diào)回到首頁,false 繼續(xù)請(qǐng)求 默認(rèn)false
 // paginationInterceptor.setOverflow(false);
 // 設(shè)置最大單頁限制數(shù)量,默認(rèn) 500 條,-1 不受限制
 // paginationInterceptor.setLimit(500);
 // 開啟 count 的 join 優(yōu)化,只針對(duì)部分 left join
 paginationInterceptor.setCountSqlParser(new JsqlParserCountOptimize(true));
 return paginationInterceptor;
 }
}

添加后完成了 mybatis-plus 的分頁插件。

2.對(duì) swagger-ui 2.10.5 的引入

首先在 pom.xml 文件中的 properties 下引入 <swagger.version>2.10.5</swagger.version>

<properties>
		<java.version>1.8</java.version>
		<swagger.version>2.10.5</swagger.version>
	</properties>

再在po.xml 文件中的 dependencies 文件中引入一下配置:

<!-- swagger documents-->
 <dependency>
 <groupId>io.springfox</groupId>
 <artifactId>springfox-swagger2</artifactId>
 <version>${swagger.version}</version>
 </dependency>
 <dependency>
 <groupId>io.springfox</groupId>
 <artifactId>springfox-swagger-ui</artifactId>
 <version>${swagger.version}</version>
 <exclusions>
 <exclusion>
 <groupId>io.swagger</groupId>
 <artifactId>swagger-annotations</artifactId>
 </exclusion>
 <exclusion>
 <groupId>io.swagger</groupId>
 <artifactId>swagger-models</artifactId>
 </exclusion>
 </exclusions>
 </dependency>
 <dependency>
 <groupId>io.swagger</groupId>
 <artifactId>swagger-annotations</artifactId>
 <version>1.5.21</version>
 </dependency>
 <dependency>
 <groupId>io.swagger</groupId>
 <artifactId>swagger-models</artifactId>
 <version>1.5.21</version>
 </dependency>
 <dependency>
 <groupId>io.springfox</groupId>
 <artifactId>springfox-spring-webmvc</artifactId>
 <version>2.10.5</version>
 </dependency>

為什么要先剔除 swagger-annotations 和 swagger-models ,再引入它們,可以看看另一個(gè)鏈接:springboot使用 swagger-ui 2.10.5 有關(guān)版本更新帶來的問題
當(dāng)然為什么要引入: springfox-spring-webmvc 2.10.5 也可以看看上面這個(gè)鏈接。
引入依賴后,在config 包下創(chuàng)建一個(gè) SwaggerConfig.java 文件:

import org.springframework.beans.factory.annotation.Value;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import springfox.documentation.builders.ApiInfoBuilder;
import springfox.documentation.builders.PathSelectors;
import springfox.documentation.builders.RequestHandlerSelectors;
import springfox.documentation.service.ApiInfo;
import springfox.documentation.spi.DocumentationType;
import springfox.documentation.spring.web.plugins.Docket;
import springfox.documentation.swagger2.annotations.EnableSwagger2WebMvc;


/**
 * @author hzp
 * @date 2020.12.05
 */
@EnableSwagger2WebMvc
@Configuration
public class SwaggerConfig {
 @Value("${swagger.enabled}")
 private Boolean enabled;

 @Bean
 @SuppressWarnings("all")
 public Docket createRestApi() {
 return new Docket(DocumentationType.SWAGGER_2)
 .enable(enabled)
 .apiInfo(apiInfo())
 .pathMapping("/")
 .select()
 .apis(RequestHandlerSelectors.basePackage("com.example.hzp.demo.web"))
 .paths(PathSelectors.any())
 .build();
 }

 private ApiInfo apiInfo() {
 return new ApiInfoBuilder()
 .title("app 接口文檔")
 .description("后臺(tái)登錄")
 .version("1.0")
 .build();
 }
}

添加 druid 如下面所示:

<properties>
 <java.version>1.8</java.version>
 <swagger.version>2.10.5</swagger.version>
 <druid.version>1.1.17</druid.version>
 </properties>

添加 druid依賴:

	<!-- druid -->
 <dependency>
 <groupId>com.alibaba</groupId>
 <artifactId>druid-spring-boot-starter</artifactId>
 <version>${druid.version}</version>
 </dependency>

然后建立一個(gè) web 包,結(jié)構(gòu)如下:

添加swaggerconfig.java和web包,并在web包下創(chuàng)建TestController

成初步的TestController.java 編寫,如下圖所示:

TestController.java

TestController.java

文件如下:

import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RestController;

/**
 * @author hzp
 */
@RestController
@Api(tags = "Test")
public class TestController {

 @ApiOperation(value = "測(cè)試", httpMethod = "GET")
 @GetMapping("/hello")
 public String testController(){
 return "hello,world!";
 }
}

完善application.yml 文件如下:

server:
 port: 8088

spring:
 datasource:
 type: com.alibaba.druid.pool.DruidDataSource
 driver-class-name: com.mysql.cj.jdbc.Driver
 url: jdbc:mysql://loaclhost:3306/test?useUnicode=true&characterEncoding=utf-8&serverTimezone=Asia/Shanghai
 username: root
 password: 123456
 druid:
 initial-size: 5 #連接池初始化大小
 min-idle: 10 #最小空閑連接數(shù)
 max-active: 20 #最大連接數(shù)
 # web-stat-filter:
 # exclusions: "*.js,*.gif,*.jpg,*.png,*.css,*.ico,/druid/*" #不統(tǒng)計(jì)這些請(qǐng)求數(shù)據(jù)
 stat-view-servlet: #訪問監(jiān)控網(wǎng)頁的登錄用戶名和密碼
 login-username: druid
 login-password: druid

#是否開啟 swagger-ui
swagger:
 enabled: true

mybatis-plus:
 # 如果是放在src/main/java目錄下 classpath:/com/*/*/mapper/*Mapper.xml
 # 如果是放在resource目錄 classpath:/mapper/**.xml
 mapper-locations: classpath:/mapper/**.xml
 configuration:
 log-impl: org.apache.ibatis.logging.stdout.StdOutImpl

記住一定要有數(shù)據(jù)庫連接喲,這要的話 中間的 druid 等引入起來比較方便。

啟動(dòng)項(xiàng)目后如圖所示:

在這里插入圖片描述

當(dāng)然你也可以直接使用 鏈接進(jìn)行訪問:
localhost:8088/test 出現(xiàn)如圖所示:

在這里插入圖片描述

至此,整個(gè)介紹基本完成,后續(xù)會(huì)上傳代碼到 git 上,感謝您的觀看。

到此這篇關(guān)于springboot+swagger2.10.5+mybatis-plus 入門的文章就介紹到這了,更多相關(guān)springboot swagger2.10.5 mybatis-plus 入門內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Java基礎(chǔ)教程之Map遍歷的5種方式

    Java基礎(chǔ)教程之Map遍歷的5種方式

    Map作為Java中的一種集合,以鍵值對(duì)的形式存放一批數(shù)據(jù),經(jīng)常會(huì)被我們應(yīng)用在項(xiàng)目中,這篇文章主要給大家介紹了關(guān)于Java基礎(chǔ)教程之Map遍歷的5種方式,需要的朋友可以參考下
    2024-01-01
  • 在Mac上安裝JDK21的詳細(xì)流程

    在Mac上安裝JDK21的詳細(xì)流程

    在macOS上安裝JDK(Java Development Kit)21是相對(duì)簡(jiǎn)單的過程,這篇文章主要給大家介紹了關(guān)于在Mac上安裝JDK21的詳細(xì)流程,文中通過圖文介紹的非常詳細(xì),需要的朋友可以參考下
    2024-08-08
  • java實(shí)現(xiàn)簡(jiǎn)單的拼圖游戲

    java實(shí)現(xiàn)簡(jiǎn)單的拼圖游戲

    這篇文章主要為大家詳細(xì)介紹了java實(shí)現(xiàn)簡(jiǎn)單的拼圖游戲,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2021-07-07
  • Spring?零基礎(chǔ)入門WebFlux框架體系

    Spring?零基礎(chǔ)入門WebFlux框架體系

    Spring5發(fā)布有兩年了,隨Spring5一起發(fā)布了一個(gè)和Spring?WebMvc同級(jí)的Spring?WebFlux。這是一個(gè)支持反應(yīng)式編程模型的新框架體系。反應(yīng)式模型區(qū)別于傳統(tǒng)的MVC最大的不同是異步的、事件驅(qū)動(dòng)的、非阻塞的,這使得應(yīng)用程序的并發(fā)性能會(huì)大大提高,單位時(shí)間能夠處理更多的請(qǐng)求
    2022-07-07
  • Java實(shí)現(xiàn)常用的三種加密算法詳解

    Java實(shí)現(xiàn)常用的三種加密算法詳解

    編程中常見的加密算法有以下幾種:信息摘要算法、對(duì)稱加密算法以及非對(duì)稱加密算法。本文將利用Java實(shí)現(xiàn)這幾種常見的加密算法,需要的可以參考一下
    2022-03-03
  • SpringBoot測(cè)試之高級(jí)配置方式

    SpringBoot測(cè)試之高級(jí)配置方式

    這篇文章主要介紹了SpringBoot測(cè)試之高級(jí)配置方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2024-04-04
  • SpringBoot自定義定時(shí)任務(wù)的實(shí)現(xiàn)示例

    SpringBoot自定義定時(shí)任務(wù)的實(shí)現(xiàn)示例

    本文主要介紹了SpringBoot自定義定時(shí)任務(wù),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2024-05-05
  • Springboot shiro認(rèn)證授權(quán)實(shí)現(xiàn)原理及實(shí)例

    Springboot shiro認(rèn)證授權(quán)實(shí)現(xiàn)原理及實(shí)例

    這篇文章主要介紹了Springboot shiro認(rèn)證授權(quán)實(shí)現(xiàn)原理及實(shí)例,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-06-06
  • Java 泛型有哪些好處詳解

    Java 泛型有哪些好處詳解

    這篇文章主要介紹了 Java 泛型有哪些好處詳解的相關(guān)資料,需要的朋友可以參考下
    2017-02-02
  • 用SpringMVC編寫一個(gè)HelloWorld的詳細(xì)過程

    用SpringMVC編寫一個(gè)HelloWorld的詳細(xì)過程

    SpringMVC是Spring的一個(gè)后續(xù)產(chǎn)品,是Spring的一個(gè)子項(xiàng)目<BR>SpringMVC?是?Spring?為表述層開發(fā)提供的一整套完備的解決方案,本文我們將用SpringMVC編寫一個(gè)HelloWorld,文中有詳細(xì)的編寫過程,需要的朋友可以參考下
    2023-08-08

最新評(píng)論