java项目common常用方法和类

java项目common常用方法和类

  • 1、包结构
  • 2、pom.xml中的配置
  • 3、api包
    • 1)、CommonPage
    • 2)commonResult
    • 3)IErrorCode
    • 4)、ResultCode

在一个项目当中,common类通常作为一个工具类和一些通用方法,在这里记录以下mall项目中所用到的common中的方法。

1、包结构

在这里插入图片描述

2、pom.xml中的配置


4.0.0com.***.mallmall0.0.1-SNAPSHOTcom.***.mallmall-common0.0.1-SNAPSHOTmall-common工具类及通用代码1.8com.github.pagehelperpagehelper
org.springframework.bootspring-boot-starter-weborg.springframework.bootspring-boot-starter-data-redisorg.springframework.dataspring-data-commonsnet.logstash.logbacklogstash-logback-encoderio.springfoxspringfox-boot-starterorg.springframework.bootspring-boot-starter-validation

3、api包

这里贴一个对Java泛型之<T> T、 T、<T>用法进行学习:https://blog.csdn.net/weixin_52772307/article/details/126868855
在这里插入图片描述

接下来分析api包中类的作用

1)、CommonPage

这里留个疑问,pageHelper的用法,以及这里为什么要加上包名???

package com.***.mall.common.api;import com.github.pagehelper.PageInfo;
import org.springframework.data.domain.Page;import java.util.List;/*** 分页数据封装类* Created by macro on 2019/4/19.*/
public class CommonPage {/*** 当前页码*/private Integer pageNum;/*** 每页数量*/private Integer pageSize;/*** 总页数*/private Integer totalPage;/*** 总条数*/private Long total;/*** 分页数据*/private List list;/*** 将PageHelper分页后的list转为分页信息*/public static  com.***.mall.common.api.CommonPage restPage(List list) {com.***.mall.common.api.CommonPage result = new com.***.mall.common.api.CommonPage();PageInfo pageInfo = new PageInfo(list);result.setTotalPage(pageInfo.getPages());result.setPageNum(pageInfo.getPageNum());result.setPageSize(pageInfo.getPageSize());result.setTotal(pageInfo.getTotal());result.setList(pageInfo.getList());return result;}/*** 将SpringData分页后的list转为分页信息*/public static  com.***.mall.common.api.CommonPage restPage(Page pageInfo) {com.***.mall.common.api.CommonPage result = new com.***.mall.common.api.CommonPage();result.setTotalPage(pageInfo.getTotalPages());result.setPageNum(pageInfo.getNumber());result.setPageSize(pageInfo.getSize());result.setTotal(pageInfo.getTotalElements());result.setList(pageInfo.getContent());return result;}public Integer getPageNum() {return pageNum;}public void setPageNum(Integer pageNum) {this.pageNum = pageNum;}public Integer getPageSize() {return pageSize;}public void setPageSize(Integer pageSize) {this.pageSize = pageSize;}public Integer getTotalPage() {return totalPage;}public void setTotalPage(Integer totalPage) {this.totalPage = totalPage;}public List getList() {return list;}public void setList(List list) {this.list = list;}public Long getTotal() {return total;}public void setTotal(Long total) {this.total = total;}
}

2)commonResult

package com.***.mall.common.api;/*** 通用返回对象* 在web层与前端或者与其他系统进行交互时,一般在项目(应用)返回统一的参数格式,此公共返回类* CommonResult即是用作此。*/
public class CommonResult {/*** 状态码*/private long code;/*** 提示信息*/private String message;/*** 数据封装*/private T data;protected CommonResult() {}protected CommonResult(long code, String message, T data) {this.code = code;this.message = message;this.data = data;}/*** 成功返回结果** @param data 获取的数据*/public static  com.scut.mall.common.api.CommonResult success(T data) {return new com.scut.mall.common.api.CommonResult(ResultCode.SUCCESS.getCode(), ResultCode.SUCCESS.getMessage(), data);}/*** 成功返回结果** @param data 获取的数据* @param  message 提示信息*/public static  com.scut.mall.common.api.CommonResult success(T data, String message) {return new com.scut.mall.common.api.CommonResult(ResultCode.SUCCESS.getCode(), message, data);}/*** 失败返回结果* @param errorCode 错误码*/public static  com.scut.mall.common.api.CommonResult failed(com.scut.mall.common.api.IErrorCode errorCode) {return new com.scut.mall.common.api.CommonResult(errorCode.getCode(), errorCode.getMessage(), null);}/*** 失败返回结果* @param errorCode 错误码* @param message 错误信息*/public static  com.scut.mall.common.api.CommonResult failed(com.scut.mall.common.api.IErrorCode errorCode, String message) {return new com.scut.mall.common.api.CommonResult(errorCode.getCode(), message, null);}/*** 失败返回结果* @param message 提示信息*/public static  com.scut.mall.common.api.CommonResult failed(String message) {return new com.scut.mall.common.api.CommonResult(ResultCode.FAILED.getCode(), message, null);}/*** 失败返回结果*/public static  com.scut.mall.common.api.CommonResult failed() {return failed(ResultCode.FAILED);}/*** 参数验证失败返回结果*/public static  com.scut.mall.common.api.CommonResult validateFailed() {return failed(ResultCode.VALIDATE_FAILED);}/*** 参数验证失败返回结果* @param message 提示信息*/public static  com.scut.mall.common.api.CommonResult validateFailed(String message) {return new com.scut.mall.common.api.CommonResult(ResultCode.VALIDATE_FAILED.getCode(), message, null);}/*** 未登录返回结果*/public static  com.scut.mall.common.api.CommonResult unauthorized(T data) {return new com.scut.mall.common.api.CommonResult(ResultCode.UNAUTHORIZED.getCode(), ResultCode.UNAUTHORIZED.getMessage(), data);}/*** 未授权返回结果*/public static  com.scut.mall.common.api.CommonResult forbidden(T data) {return new com.scut.mall.common.api.CommonResult(ResultCode.FORBIDDEN.getCode(), ResultCode.FORBIDDEN.getMessage(), data);}public long getCode() {return code;}public void setCode(long code) {this.code = code;}public String getMessage() {return message;}public void setMessage(String message) {this.message = message;}public T getData() {return data;}public void setData(T data) {this.data = data;}
}

3)IErrorCode

/*** 常用API返回对象接口*/
public interface IErrorCode {/*** 返回码*/long getCode();/*** 返回信息*/String getMessage();
}

定义接口,返回码和返回信息

4)、ResultCode

Enum枚举类的学习:https://blog.csdn.net/qq_43842093/article/details/121175711

/*** 常用API返回对象*/
public enum ResultCode implements com.***.mall.common.api.IErrorCode {SUCCESS(200, "操作成功"),FAILED(500, "操作失败"),VALIDATE_FAILED(404, "参数检验失败"),UNAUTHORIZED(401, "暂未登录或token已经过期"),FORBIDDEN(403, "没有相关权限");private long code;private String message;private ResultCode(long code, String message) {this.code = code;this.message = message;}public long getCode() {return code;}public String getMessage() {return message;}
}


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部