欧美一级特黄大片做受成人-亚洲成人一区二区电影-激情熟女一区二区三区-日韩专区欧美专区国产专区

SpringBoot2.1RESTfulAPI項目腳手架(種子)項目

最近在做一個大型的J2EE項目,后端語言選擇了Java,理所當(dāng)然的選擇了Spring,使用Spring MVC來做restful風(fēng)格的api開發(fā)很是方便,Spring下面有很多子項目通過Springboot集成也很舒服。程序員都知道溝通很重要,實際項目中,往往是各自為戰(zhàn),盡管使用的是相同的框架、工具,編寫的代碼卻千差萬別,為了統(tǒng)一基礎(chǔ)代碼風(fēng)格,編寫了這個項目種子。

創(chuàng)新互聯(lián)專注于企業(yè)成都營銷網(wǎng)站建設(shè)、網(wǎng)站重做改版、禮縣網(wǎng)站定制設(shè)計、自適應(yīng)品牌網(wǎng)站建設(shè)、H5網(wǎng)站設(shè)計、成都做商城網(wǎng)站、集團公司官網(wǎng)建設(shè)、成都外貿(mào)網(wǎng)站制作、高端網(wǎng)站制作、響應(yīng)式網(wǎng)頁設(shè)計等建站業(yè)務(wù),價格優(yōu)惠性價比高,為禮縣等各大城市提供網(wǎng)站開發(fā)制作服務(wù)。

除此之外,在開發(fā)一個Web后端api項目時,通常都會經(jīng)歷搭建項目、選擇依賴管理工具、引入基礎(chǔ)包依賴、配置框架等,為了加快項目的開發(fā)進度(早點下班)還需要封裝一些常用的類和工具,如標(biāo)準(zhǔn)的響應(yīng)結(jié)構(gòu)體封裝、統(tǒng)一異常處理切面、接口簽名認證、初始化運行方法、輪詢方法、api版本控制封裝、異步方法配置等。

每次開始一個類型的新項目,以上這些步驟又要重復(fù)一遍,雖然能夠?qū)⒗享椖磕眠^來刪刪減減達到目的,但還是很費時費力,還容易出問題。所以,可以利用面向?qū)ο蟮乃枷?,抽取這類Web后端api項目的共同之處封裝成一個項目種子。以后再開發(fā)類似的項目,就能直接在這個項目種子上迭代,減少重復(fù)勞動。

項目地址:https://github.com/ocubexo/springboot-restful-starter

簡介

這是一個基于SpringBoot 2.1.1 RELEASE,用于搭建RESTful API工程的腳手架,只需三分鐘你就可以開始編寫業(yè)務(wù)代碼,不再煩惱于構(gòu)建項目與風(fēng)格統(tǒng)一。

快速開始

  1. 構(gòu)建數(shù)據(jù)庫
  2. 運行/src/test下的CodeGenerator.java進行代碼生成
  3. 開始編寫業(yè)務(wù)代碼

內(nèi)置功能與使用方法

RESTful風(fēng)格Result生成器

1.成功且不帶數(shù)據(jù)的結(jié)果

// 不帶數(shù)據(jù)的成功結(jié)果
return new Result().success();

返回結(jié)果示例:

{
  "code": 200,
  "message": "Success",
  "data": null
}

2.成功且?guī)Х祷財?shù)據(jù)的結(jié)果

return new Result().success("Hello,world");

// 當(dāng)然你也可以返回對象或其他類型的數(shù)據(jù)
User user = new User();
return new Result().success(user);

返回結(jié)果示例:

{
  "code": 200,
  "message": "Success",
  "data": "Hello,world"
}

或者是:

{
  "code": 200,
  "message": "Success",
  "data": {
    "name": "jack",
    "age": 20
  }
}

3.錯誤結(jié)果:

// fail方法的參數(shù)(錯誤代碼,錯誤信息)
return new Result().fail(10400, "登陸失敗,密碼錯誤");

// 你還可以自定義錯誤結(jié)果的code
return new Result().fail(null, "未登錄", 401);

返回結(jié)果示例:

{
  "code": 400,
  "message": "登陸失敗,密碼錯誤",
  "data": 10400
}

或者:

{
  "code": 401,
  "message": "未登錄",
  "data": null
}

RESTful風(fēng)格的異常接管

// 參數(shù)說明(錯誤信息, 錯誤Code)
throw new ServiceException("未登錄", 401);

// 你也可以返回錯誤代碼
throw new ServiceException(10404, "

返回結(jié)果示例:

{
  "code": 401,
  "message": "未登錄",
  "data": null
}

或者:

{
  "code": 404,
  "message": "服務(wù)器維護中",
  "data": 10404
}

基于JWT的認證機制

@Autowired
private TokenService tokenService;

// 生成Payload
Map<String,Object> payload = new HashMap<String,Object>();
payload.put("id",1);
// 生成Token
tokenService.generate(TokenType.ACCESS, payload, 1);


// 格式化Token
String token = getYourToken();
tokenService.parse(token); // 返回的結(jié)果是一個Jwt對象,詳見JJWT文檔
Auth注解
Auth注解用于獲取當(dāng)前用戶的Token中的userId,在獲取的同時會自動校驗用戶Token,若用戶未登錄則會拋出未登錄的異常。
// 在controller中使用
@PostMapping("/user/1/edit")
public Result edit(@Auth int userId, @ResponseBody sthPosted) {
  // 根據(jù)ID判斷權(quán)限
}

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持創(chuàng)新互聯(lián)。

網(wǎng)站名稱:SpringBoot2.1RESTfulAPI項目腳手架(種子)項目
當(dāng)前路徑:http://aaarwkj.com/article0/peisio.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站內(nèi)鏈、面包屑導(dǎo)航網(wǎng)站導(dǎo)航、網(wǎng)站維護、網(wǎng)站營銷、電子商務(wù)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

成都網(wǎng)站建設(shè)
免费看欧美粗又大爽老| 先锋av一区二区三区| 国产精品成人av在线网站| 女同亚洲一区二区三区| 久久久av在线免费观看| 日韩电影在线播放中文字幕| 亚洲经典日韩欧美一区| 日本免费中文字幕在线| 日韩精品在线观看不卡| 6080yy精品一区二区三区| 国产精品99久久久久久| 最近最新免费成人在线视频| 亚洲黄色片一区二区三区| 日本亚洲欧洲一区二区| 国产美女冒白浆免费网站| 亚洲综合色婷婷在线影院| 在线日韩欧美一区二区三区| 在线观看91高清视频| 天天操夜夜操狠狠操91| 中文字幕在线不卡精品视频| 亚洲性图中文字幕在线| 欧美精品在线高清观看| 狼人综合狼人综合网站| 亚洲av污精品一区二区三区| 精品毛片久久久久久久久| 日本精品视频一区二区三区| 国产精品亚洲精品久久| 青青草老司机在线视频| 欧美大尺度影片在线观看| 中文岳妇荡欲丰满肥熟| 亚洲一区二区精品自拍| 日韩精品在线观看一| 亚洲日本va午夜中文字幕一区| 亚洲色图视频免费观看| 亚洲国产不卡一区二区三区| 国模在线视频一区二区| 国产日韩熟女中文字幕| 欧美亚洲另类在线第一页| 一区二区中文字幕日本韩国| 极品人妻视频中文字幕| 国产高潮精品呻吟久久av|