某电商项目开发中遇到的问题及解决方案总结

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_32768743/article/details/86727042

Spring Boot 后端

依赖要齐全
老老实实使用这个方式调用,最靠谱
在这里插入图片描述
参数可以继承这个类,方便使用

@Getter
@Setter
public class PageParam extends BaseObject {
    private Integer pageNum = 1;
    private Integer pageSize = 10;
    private String orderBy;
}

  • idea无法提取kotlin方法的参数
    这个不是什么大问题,两者的理念不同。在实际的业务开发中,很少为每个方法的参数写注释,因为参数的意义很明显,不再需要解释,如果是真的那个比较模糊的,可以单独写一下参数的意义,要求什么的。

  • RESTful中该不该用http协议中的响应码
    尽量使用和http语义一致的响应码。由于业务的复杂性,自己封装一个响应是非常必要的。比如

/**
 * 所有前后端分类的请求,返回这个包装类
 */
@AllArgsConstructor
@NoArgsConstructor
@Getter
@Setter
public class Response<T> extends BaseObject{
    /**
     * 自定义响应码
     */
    private Integer code;
    /**
     * 响应数据
     */
    private T data;
    /**
     * 正常情况下,对没有响应数据的情况一个解释
     * 出错情况下,前端显示文案
     */
    private String msg;

    private static final Integer OK = 200;
    private static final Integer BAD_REQUEST = 400;
    private static final Integer UNAUTHORIZED = 401;
    private static final Integer INTERNAL_SERVER_ERROR = 500;

    public static Response success(){
        return new Response(OK, null, null);
    }
    public static Response success(Object data){
        return new Response(OK, data, null);
    }

    public static Response success(Object data, String msg){
        return new Response(OK, data, msg);
    }

    public static Response fail(String msg) {
        return new Response(BAD_REQUEST, null, msg);
    }
    public static Response failForUnauthorized(String msg) {
        return new Response(UNAUTHORIZED, null, msg);
    }
    public static Response failForInternalServerError(String msg) {
        return new Response(INTERNAL_SERVER_ERROR, null, msg);
    }

    public static Response fail(Object data, String msg){
        return new Response(BAD_REQUEST, data, msg);
    }
}

关于错误的处理,简单点的可以直接放msg的,前端直接显示。或者前后端对具体问题,具体定义响应码,然后分别做兼容处理。这就麻烦些,但也更灵活。

Vue大前端

数据库

猜你喜欢

转载自blog.csdn.net/qq_32768743/article/details/86727042