【開源】Springboot API 一鍵生成器
查詢所有後臺使用者 *
author: mrc
*
* @return xyz.chaobei.common.api.CommonResult
* @since 2020-10-12 11:18:42
**/
@ApiOperation("查詢所有後臺使用者")
@GetMapping("/")
public CommonResult getAll() {
List 預設分頁請求後臺使用者
* author: mrc
*
* @param pageAO 分頁查詢引數
* @since 2020-10-12 11:18:42
* @return xyz.chaobei.common.api.CommonResult
**/
@ApiOperation("預設分頁請求後臺使用者")
@PostMapping("/page")
public CommonResult paging(@RequestBody @ApiParam("分頁查詢引數") UmsAdminPageAO pageAO) {
Page 儲存一個後臺使用者
* author: mrc
*
* @param params 儲存欄位
* @since 2020-10-12 11:18:42
* @return xyz.chaobei.common.api.CommonResult
**/
@ApiOperation("儲存一個後臺使用者")
@PostMapping("/")
public CommonResult save(@RequestBody @Valid @ApiParam("儲存欄位") UmsAdminSaveAO params) {
boolean isSave = umsAdminService.save(params);
return CommonResult.result(isSave);
}
/**
* 修改一個後臺使用者
* author: mrc
*
* @param id 被修改的ID
* @param params 被修改的欄位
* @since 2020-10-12 11:18:42
* @return xyz.chaobei.common.api.CommonResult
**/
@ApiOperation("修改一個後臺使用者")
@PutMapping("/{id}")
public CommonResult update(@PathVariable("id") @ApiParam("被修改的ID") Integer id, @Valid @RequestBody @ApiParam("被修改的欄位") UmsAdminSaveAO params) {
boolean isUpdate = umsAdminService.updateById(params,id);
return CommonResult.result(isUpdate);
}
/**
* 刪除一個後臺使用者
* author: mrc
*
* @param id 被刪除的ID
* @since 2020-10-12 11:18:42
* @return xyz.chaobei.common.api.CommonResult
**/
@ApiOperation("刪除一個後臺使用者")
@DeleteMapping("/{id}")
public CommonResult delete(@Valid @NotNull @PathVariable("id") @ApiParam("被刪除的ID") Integer id) {
boolean isDelete = umsAdminService.deleteById(id);
return CommonResult.result(isDelete);
}
}
```
#### SaveAO
> SaveAO 一般就是前端 `填寫表單入參的資訊` ,當然我們能直接使用 `DO` 進行攜帶引數。那樣不安全。`AO` 將引數從 `Controller`
>
> 攜帶後,通過 `javax.validation.Valid` 對欄位進行校驗後、方可進行下一步。
- `SaveAO` 將引數從 `Controller` 傳遞到 `Service` 處理邏輯
- `Controller` 入參的時候,檢驗 `SaveAO` 所包含的引數。
- @NotBlank
- @NotNull
- 略...
- `@ApiModelProperty` 說明引數註釋資訊
```java
@Getter
@Setter
public class UmsAdminSaveAO {
/**
* 使用者名稱
*/
@NotBlank
@ApiModelProperty("使用者名稱")
private String username;
/**
* 密碼
*/
@NotBlank
@ApiModelProperty("密碼")
private String password;
/**
* 頭像
*/
@ApiModelProperty("頭像")
private String icon;
/**
* 0鎖定1正常使用
*/
@NotNull
@ApiModelProperty("0鎖定1正常使用")
private Integer lock;
/**
* 電子郵箱
*/
@NotBlank
@ApiModelProperty("電子郵箱")
private String email;
/**
* 暱稱
*/
@ApiModelProperty("暱稱")
private String nickName;
/**
* 備註資訊
*/
@ApiModelProperty("備註資訊")
private String note;
}
```
當然。這裡的所有引數都是可以自定義的。你想要哪些,就生成哪些~
#### Service
- `Service` 負責將 `Controller` 傳遞的 `AO` 複製到 `DO(Database Object)` 。
- 呼叫 `Mapper` 的方法進行持久化。
- `Service` 返回一個 成功或者失敗的標誌。
- 邏輯異常,丟擲一個異常資訊【例如這個ID 找不到使用者。。。】,全域性捕獲後,返回給前端進行提示。
```java
@Service
public class UmsAdminServiceimpl implements UmsAdminService {
@Autowired
private UmsAdminMapper umsAdminMapper;
@Override
public List