最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Java SpringBoot+vue+實戰(zhàn)項目詳解

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

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

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

在這里插入圖片描述

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

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

1.1.1單體架構(gòu)

在這里插入圖片描述

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

在這里插入圖片描述

1.2 接口介紹

1.2.1接口概念

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

1.2.2接口規(guī)范

參考:《鋒迷商城》后端接⼝說明

在這里插入圖片描述

1.3 Swagger

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

1.3.1作用

⽣成接⼝說明⽂檔對接⼝進⾏測試

1.3.2 Swagger整合

在api⼦⼯程添加依賴(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會幫助我們⽣成接⼝⽂檔
	 * 1:配置⽣成的⽂檔信息
	 * 2: 配置⽣成規(guī)則*/
	 /*Docket封裝接⼝⽂檔信息*/
	 @Bean
	 public Docket getDocket(){
	 //創(chuàng)建封⾯信息對象
		 ApiInfoBuilder apiInfoBuilder = new ApiInfoBuilder();
 		 apiInfoBuilder.title("《鋒迷商城》后端接⼝說明")
 			  		   .description("此⽂檔詳細(xì)說明了鋒迷商城項⽬后端接⼝規(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;
	 }
}

測試:
啟動SpringBoot應(yīng)⽤,訪問:http://localhost:8080/swagger-ui.html

1.3.3 Swagger注解說明

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

2.@Api 類注解,在控制器類添加此注解,可以對控制器類進⾏功能說明

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

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

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

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

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

1.3.4 Swagger-ui 插件

導(dǎo)入插件依賴

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

1.4 RESTful

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

RESTful 是⼀種Web api的標(biāo)準(zhǔn),也就是⼀種url設(shè)計⻛格/規(guī)范
每個URL請求路徑代表服務(wù)器上的唯⼀資源
傳統(tǒng)的URL設(shè)計:
	 http://localhost:8080/goods/delete?goodsId=1 商品1
	 http://localhost:8080/goods/delete?goodsId=2 商品2
RESTful設(shè)計:
	 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.使⽤不同的請求⽅式表示不同的操作

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

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

4.在控制類或者每個接⼝⽅法添加 @ResponseBody 注解將返回的對象格式為json

5.或者直接在控制器類使⽤ @RestController 注解聲明控制器

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

總結(jié)

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

相關(guān)文章

  • Java 反轉(zhuǎn)帶頭結(jié)點的單鏈表并顯示輸出的實現(xiàn)過程

    Java 反轉(zhuǎn)帶頭結(jié)點的單鏈表并顯示輸出的實現(xiàn)過程

    這篇文章主要介紹了Java 反轉(zhuǎn)帶頭結(jié)點的單鏈表并顯示輸出,本文通過實例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2021-11-11
  • java遍歷http請求request的所有參數(shù)實現(xiàn)方法

    java遍歷http請求request的所有參數(shù)實現(xiàn)方法

    下面小編就為大家?guī)硪黄猨ava遍歷http請求request的所有參數(shù)實現(xiàn)方法。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2016-09-09
  • Maven+SSM框架實現(xiàn)簡單的增刪改查

    Maven+SSM框架實現(xiàn)簡單的增刪改查

    這篇文章主要介紹了Maven+SSM框架實現(xiàn)簡單的增刪改查,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-03-03
  • java實現(xiàn)獲取網(wǎng)站的keywords,description

    java實現(xiàn)獲取網(wǎng)站的keywords,description

    這篇文章主要介紹了java實現(xiàn)獲取網(wǎng)站的keywords,description的相關(guān)資料,需要的朋友可以參考下
    2015-03-03
  • java通過jacob實現(xiàn)office在線預(yù)覽功能

    java通過jacob實現(xiàn)office在線預(yù)覽功能

    這篇文章主要為大家詳細(xì)介紹了java通過jacob實現(xiàn)office在線預(yù)覽功能,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2019-08-08
  • 如何用java編寫一個rmi

    如何用java編寫一個rmi

    RMI能讓一個Java程序去調(diào)用網(wǎng)絡(luò)中另一臺計算機的Java對象的方法,那么調(diào)用的效果就像是在本機上調(diào)用一樣。下面我們來詳細(xì)了解一下吧
    2019-06-06
  • 詳解Java如何實現(xiàn)百萬數(shù)據(jù)excel導(dǎo)出功能

    詳解Java如何實現(xiàn)百萬數(shù)據(jù)excel導(dǎo)出功能

    這篇文章主要為大家詳細(xì)介紹了Java如何實現(xiàn)百萬數(shù)據(jù)excel導(dǎo)出功能,文中的示例代碼講解詳細(xì),具有一定的借鑒價值,需要的可以參考一下
    2023-02-02
  • java集合遍歷的幾種方式總結(jié)及詳細(xì)比較

    java集合遍歷的幾種方式總結(jié)及詳細(xì)比較

    下面小編就為大家?guī)硪黄猨ava集合遍歷的幾種方式總結(jié)及詳細(xì)比較。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-04-04
  • HDFS中JAVA API的使用

    HDFS中JAVA API的使用

    HDFS是一個分布式文件系統(tǒng),既然是文件系統(tǒng),就可以對其文件進行操作,比如說新建文件、刪除文件、讀取文件內(nèi)容等操作。下面記錄一下使用JAVA API對HDFS中的文件進行操作的過程
    2017-07-07
  • 分布式Netty源碼分析概覽

    分布式Netty源碼分析概覽

    這篇文章主要為大家介紹了分布式Netty源碼分析概覽,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2022-03-03

最新評論

舒城县| 闻喜县| 浦北县| 响水县| 台山市| 泸州市| 雷山县| 云浮市| 五峰| 前郭尔| 望谟县| 徐闻县| 龙泉市| 三河市| 左云县| 台江县| 宁化县| 吴桥县| 通许县| 文安县| 炉霍县| 密山市| 高尔夫| 道孚县| 延寿县| 茂名市| 明溪县| 西和县| 莆田市| 三江| 应城市| 锦屏县| 舟山市| 荣昌县| 定远县| 弥勒县| 盘锦市| 景洪市| 桐庐县| 鹰潭市| 平果县|