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

Java SpringBoot+vue+實(shí)戰(zhàn)項(xiàng)目詳解

 更新時(shí)間:2021年09月10日 10:22:53   作者:Panda_Java  
這篇文章主要介紹了SpringBoot+VUE實(shí)現(xiàn)前后端分離的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧

1.《鋒迷商城》業(yè)務(wù)流程設(shè)計(jì)-接⼝規(guī)范

在企業(yè)項(xiàng)⽬開(kāi)發(fā)中,當(dāng)完成項(xiàng)⽬的需求分析、功能分析、數(shù)據(jù)庫(kù)分析與設(shè)計(jì)之后,
項(xiàng)⽬組就會(huì)按照項(xiàng)⽬中的功能進(jìn)⾏開(kāi)發(fā)任務(wù)的分配

在這里插入圖片描述

1.1 前后端分離與單體架構(gòu)流程實(shí)現(xiàn)的區(qū)別

單體架構(gòu):⻚⾯和控制之間可以進(jìn)⾏跳轉(zhuǎn),同步請(qǐng)求控制器,流程控制由控制器來(lái)完成
前后端分離架構(gòu):前端和后端分離開(kāi)發(fā)和部署,前端只能通過(guò)異步向后端發(fā)送請(qǐng)求,
后端只負(fù)責(zé)接收請(qǐng)求及參數(shù)、處理請(qǐng)求、返回處理結(jié)果,但是后端并不負(fù)責(zé)流程控制,
流程控制是由前端完成

1.1.1單體架構(gòu)

在這里插入圖片描述

1.1.2 前后端分離架構(gòu)

在這里插入圖片描述

1.2 接口介紹

1.2.1接口概念

狹義的理解:就是控制器中可以接受⽤戶(hù)請(qǐng)求的某個(gè)⽅法
應(yīng)⽤程序編程接⼝,簡(jiǎn)稱(chēng)API,就是軟件系統(tǒng)不同組成部分銜接的約定

1.2.2接口規(guī)范

參考:《鋒迷商城》后端接⼝說(shuō)明

在這里插入圖片描述

1.3 Swagger

前后端分離開(kāi)發(fā),后端需要編寫(xiě)接⼝說(shuō)明⽂檔,會(huì)耗費(fèi)⽐較多的時(shí)間
swagger是⼀個(gè)⽤于⽣成服務(wù)器接⼝的規(guī)范性⽂檔、并且能夠?qū)?#12061;進(jìn)⾏測(cè)試的⼯具

1.3.1作用

⽣成接⼝說(shuō)明⽂檔對(duì)接⼝進(jìn)⾏測(cè)試

1.3.2 Swagger整合

在api⼦⼯程添加依賴(lài)(Swagger2 \ Swagger UI)

<dependency>
 	 <groupId>io.springfox</groupId>
	 <artifactId>springfox-swagger2</artifactId>
	 <version>2.9.2</version>
</dependency>
<dependency>
	 <groupId>io.springfox</groupId>
	 <artifactId>springfox-swagger-ui</artifactId>
	 <version>2.9.2</version>
</dependency>

在api⼦⼯程創(chuàng)建swagger的配置(Java配置⽅式)

@Configuration
@EnableSwagger2
public class SwaggerConfig {
 	/*swagger會(huì)幫助我們⽣成接⼝⽂檔
	 * 1:配置⽣成的⽂檔信息
	 * 2: 配置⽣成規(guī)則*/
	 /*Docket封裝接⼝⽂檔信息*/
	 @Bean
	 public Docket getDocket(){
	 //創(chuàng)建封⾯信息對(duì)象
		 ApiInfoBuilder apiInfoBuilder = new ApiInfoBuilder();
 		 apiInfoBuilder.title("《鋒迷商城》后端接⼝說(shuō)明")
 			  		   .description("此⽂檔詳細(xì)說(shuō)明了鋒迷商城項(xiàng)⽬后端接⼝規(guī)范....")
					   .version("v 2.0.1")
 					   .contact( new Contact("亮哥","www.liangge.com","liangge@wang.com") );
		 ApiInfo apiInfo = apiInfoBuilder.build();
 		 Docket docket = new Docket(DocumentationType.SWAGGER_2)
						 .apiInfo(apiInfo) //指定⽣成的⽂檔中的封⾯信息:⽂檔標(biāo)題、版本、作者
						 .select()	 
						 .apis(RequestHandlerSelectors.basePackage("com.qfedu.fmmall.controller"))
						 .paths(PathSelectors.any())
						 .build();
		 return docket;
	 }
}

測(cè)試:
啟動(dòng)SpringBoot應(yīng)⽤,訪(fǎng)問(wèn):http://localhost:8080/swagger-ui.html

1.3.3 Swagger注解說(shuō)明

1.swagger提供了⼀套注解,可以對(duì)每個(gè)接⼝進(jìn)⾏詳細(xì)說(shuō)明

2.@Api 類(lèi)注解,在控制器類(lèi)添加此注解,可以對(duì)控制器類(lèi)進(jìn)⾏功能說(shuō)明

@Api(value = "提供商品添加、修改、刪除及查詢(xún)的相關(guān)接⼝",tags = "商品管理")   

3.@ApiOperation ⽅法注解:說(shuō)明接⼝⽅法的作⽤

4.@ApiImplicitParams 和 @ApiImplicitParam ⽅法注解,說(shuō)名接⼝⽅法的參數(shù)

5.@ApiModel 和 @ApiModelProperty 當(dāng)接⼝參數(shù)和返回值為對(duì)象類(lèi)型時(shí),在實(shí)體類(lèi)中添加注解說(shuō)明

6.@ApiIgnore 接⼝⽅法注解,添加此注解的⽅法將不會(huì)⽣成到接⼝⽂檔中

1.3.4 Swagger-ui 插件

導(dǎo)入插件依賴(lài)

<dependency>
 	<groupId>com.github.xiaoymin</groupId>
 	<artifactId>swagger-bootstrap-ui</artifactId>
	<version>1.9.6</version>
</dependency>

1.4 RESTful

1.前后端分離開(kāi)發(fā)的項(xiàng)⽬中,前后端之間是接⼝進(jìn)⾏請(qǐng)求和響應(yīng),后端向前端提供請(qǐng)求時(shí)就要對(duì)外暴露⼀個(gè)URL;URL的設(shè)計(jì)不能是隨意的,需要遵從⼀定的設(shè)計(jì)規(guī)范——RESTful

RESTful 是⼀種Web api的標(biāo)準(zhǔn),也就是⼀種url設(shè)計(jì)⻛格/規(guī)范
每個(gè)URL請(qǐng)求路徑代表服務(wù)器上的唯⼀資源
傳統(tǒng)的URL設(shè)計(jì):
	 http://localhost:8080/goods/delete?goodsId=1 商品1
	 http://localhost:8080/goods/delete?goodsId=2 商品2
RESTful設(shè)計(jì):
	 http://localhost:8080/goods/delete/1 商品1
 	 http://localhost:8080/goods/delete/2 商品2
 @RequestMapping("/delete/{gid}")
 public ResultVO deleteGoods(@PathVariable("gid") int goodsId){
	 System.out.println("-----"+goodsId);
 	 return new ResultVO(10000,"delete success",null);
}

2.使⽤不同的請(qǐng)求⽅式表示不同的操作

SpringMVC對(duì)RESTful⻛格提供了很好的⽀持,在我們定義⼀個(gè)接⼝的URL時(shí),可以通
過(guò)@RequestMapping(value="/{id}",method=RequestMethod.GET) 形式指定請(qǐng)求
⽅式,也可使⽤特定請(qǐng)求⽅式的注解設(shè)定URL
@PostMapping("/add")
@DeleteMapping("/{id}")
@PutMapping("/{id}")
@GetMapping("/{id}")
post 添加.  get 查詢(xún).  put 修改. delete 刪除. option (預(yù)檢).

3.接⼝響應(yīng)的資源的表現(xiàn)形式采⽤JSON(或者XML)

4.在控制類(lèi)或者每個(gè)接⼝⽅法添加 @ResponseBody 注解將返回的對(duì)象格式為json

5.或者直接在控制器類(lèi)使⽤ @RestController 注解聲明控制器

6.前端(Android\ios\pc)通過(guò)⽆狀態(tài)的HTTP協(xié)議與后端接⼝進(jìn)⾏交互

總結(jié)

本篇文章就到這里了,希望能夠給你帶來(lái)幫助,也希望您能夠多多關(guān)注腳本之家的更多內(nèi)容!

相關(guān)文章

  • java 繼承訪(fǎng)問(wèn)成員變量代碼實(shí)例

    java 繼承訪(fǎng)問(wèn)成員變量代碼實(shí)例

    這篇文章主要介紹了java 繼承訪(fǎng)問(wèn)成員變量代碼實(shí)例,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2019-10-10
  • Spring?Boot?集成Redisson實(shí)現(xiàn)分布式鎖詳細(xì)案例

    Spring?Boot?集成Redisson實(shí)現(xiàn)分布式鎖詳細(xì)案例

    這篇文章主要介紹了Spring?Boot?集成Redisson實(shí)現(xiàn)分布式鎖詳細(xì)案例,文章圍繞主題展開(kāi)詳細(xì)的內(nèi)容介紹,具有一定的參考價(jià)值,需要的朋友可以參考一下
    2022-08-08
  • resty upload無(wú)需依賴(lài)的文件上傳與下載

    resty upload無(wú)需依賴(lài)的文件上傳與下載

    這篇文章主要為大家介紹了resty upload中無(wú)需依賴(lài)的文件上傳與下載過(guò)程,有需要的朋友可以借鑒參考下,希望能夠有所幫助祝大家多多進(jìn)步,早日升職加薪
    2022-03-03
  • Spring中AOP注解@Aspect的使用詳解

    Spring中AOP注解@Aspect的使用詳解

    這篇文章主要介紹了Spring中AOP注解@Aspect的使用詳解,AOP是種面向切面的編程思想,面向切面編程是將程序抽象成各個(gè)切面,將那些影響了多個(gè)類(lèi)的公共行為抽取到一個(gè)可重用模塊里,減少系統(tǒng)的重復(fù)代碼,降低模塊間的耦合度,增強(qiáng)代碼的可操作性和可維護(hù)性,需要的朋友可以參考下
    2024-01-01
  • springboot掃碼登錄的簡(jiǎn)單實(shí)現(xiàn)

    springboot掃碼登錄的簡(jiǎn)單實(shí)現(xiàn)

    本文主要介紹基于SpringBoot + Vue + Android實(shí)現(xiàn)的掃碼登錄,文中通過(guò)示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2021-09-09
  • 三步輕松實(shí)現(xiàn)Java的SM2前端加密后端解密

    三步輕松實(shí)現(xiàn)Java的SM2前端加密后端解密

    SM2算法和RSA算法都是公鑰密碼算法,SM2算法是一種更先進(jìn)安全的算法,在我們國(guó)家商用密碼體系中被用來(lái)替換RSA算法,這篇文章主要給大家介紹了關(guān)于如何通過(guò)三步輕松實(shí)現(xiàn)Java的SM2前端加密后端解密的相關(guān)資料,需要的朋友可以參考下
    2024-01-01
  • Java如何調(diào)用TSC打印機(jī)進(jìn)行打印詳解

    Java如何調(diào)用TSC打印機(jī)進(jìn)行打印詳解

    這篇文章主要給大家介紹了關(guān)于Java如何調(diào)用TSC打印機(jī)進(jìn)行打印的相關(guān)資料,文中介紹了三種方法,分別是兩種后臺(tái)打印以及JS打印 ,三種方法都給出了詳細(xì)的示例代碼,需要的朋友可以參考借鑒,下面來(lái)一起看看吧
    2018-07-07
  • 如何使用Spring Validation優(yōu)雅地校驗(yàn)參數(shù)

    如何使用Spring Validation優(yōu)雅地校驗(yàn)參數(shù)

    這篇文章主要介紹了如何使用Spring Validation優(yōu)雅地校驗(yàn)參數(shù),本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2020-07-07
  • 基于Spring概念模型:PathMatcher 路徑匹配器

    基于Spring概念模型:PathMatcher 路徑匹配器

    這篇文章主要介紹了Spring概念模型:PathMatcher 路徑匹配器,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2021-09-09
  • Springboot 1.5.7整合Kafka-client代碼示例

    Springboot 1.5.7整合Kafka-client代碼示例

    這篇文章主要介紹了Springboot 1.5.7整合Kafka-client代碼示例,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-10-10

最新評(píng)論