pull/4/head
zhouyu 9 months ago
parent fc0894290d
commit ee99f6c712

@ -7,40 +7,59 @@ package com.njupt.swg.common.constants;
* @DESC
*/
public class Constants {
// 此部分定义了一系列自定义的状态码常量,用于在整个应用中统一标识不同的响应状态,方便在不同的业务逻辑处理中进行状态判断与相应的操作。
/**自定义状态码 start**/
// 定义一个整型常量RESP_STATUS_OK值为200通常用于表示请求处理成功的状态。在接口返回响应给客户端时如果业务操作顺利完成就可以使用这个状态码来告知客户端请求已成功处理后续客户端可根据此状态码进行相应的后续操作比如正常展示返回的数据等。
public static final int RESP_STATUS_OK = 200;
// 定义整型常量RESP_STATUS_NOAUTH值为401该常量代表未授权的状态。当用户尝试访问某个受保护的资源或接口但没有提供有效的认证信息或者权限不足时服务器会返回这个状态码给客户端提示客户端需要进行身份认证或者获取相应权限后才能再次发起访问请求。
public static final int RESP_STATUS_NOAUTH = 401;
// 定义整型常量RESP_STATUS_INTERNAL_ERROR值为500用于表示服务器内部出现错误的情况。例如在服务器端代码执行过程中发生了未预期的异常导致无法正常完成请求处理时就会返回这个状态码给客户端告知客户端请求处理失败是由于服务器内部问题客户端可以根据此情况提示用户联系系统管理员等进一步排查问题。
public static final int RESP_STATUS_INTERNAL_ERROR = 500;
// 定义整型常量RESP_STATUS_BADREQUEST值为400此常量表示请求的参数存在问题比如请求参数格式不符合接口要求、缺少必要的参数等情况。当服务器接收到这样的请求时会返回这个状态码给客户端让客户端知晓需要修正请求参数后重新发起请求以保证请求能够被正确处理。
public static final int RESP_STATUS_BADREQUEST = 400;
/**自定义状态码 end**/
// 以下是关于Redis中存储用户相关数据时使用的键key前缀的常量定义通过统一使用这个前缀能方便地在Redis中对用户相关的缓存数据进行分类管理和查找等操作。
/***redis user相关的key以这个打头**/
public static final String TOKEN_PREFIX = "user_";
// 这里定义了一个内部接口RedisCacheExtime用于集中管理用户登录信息在Redis中的过期时间相关常量这样做可以使代码中涉及到该过期时间的地方保持一致性并且通过接口的形式将相关逻辑进行了封装和分组方便后续维护与修改。
/**
* redis
*/
public interface RedisCacheExtime{
// 定义一个整型常量REDIS_SESSION_EXTIME用于表示用户登录在Redis中的缓存过期时间其值计算为60 * 60 * 10也就是30分钟按照每秒为单位换算。意味着在用户登录后相关的登录状态等信息在Redis缓存中会保存30分钟一旦超过这个时间缓存数据将会自动过期后续如果需要调整用户登录缓存的过期时长只需在这个接口内修改该常量的值即可统一生效。
int REDIS_SESSION_EXTIME = 60 * 60 * 10;//30分钟
}
// 以下是针对用户注册时判断重复的参数类型所定义的常量,用于明确在注册流程中需要检查哪些具体参数是否已被其他用户使用,从而保证注册信息的唯一性。
/** 用户注册判断重复的参数类型 start **/
// 定义一个字符串常量EMAIL值为"email",在用户注册的逻辑中,使用这个常量来标识需要检查用户输入的邮箱地址是否已经被其他用户注册过,比如在数据库查询验证环节,通过这个常量来指定要比对的字段为邮箱字段,以防止重复注册相同邮箱的情况出现。
public static final String EMAIL = "email";
// 定义字符串常量USERNAME值为"username",同样在用户注册过程中,该常量用于表明要检查用户名是否重复,在进行数据库查询或者其他验证操作时,依据这个常量来确定是针对用户名这个字段进行重复性的判断,确保每个用户名在系统中具有唯一性。
public static final String USERNAME = "username";
/** 用户注册判断重复的参数类型 end **/
// 定义了一个内部接口Role用于对用户在系统中不同角色的相关常量进行统一管理这样在涉及用户角色判断、权限分配以及业务逻辑根据角色进行不同处理等场景时可以清晰地通过这些常量来区分不同的用户角色提高代码的可读性和可维护性。
/** 用户角色 **/
public interface Role{
// 定义整型常量ROLE_CUSTOME值为0用于表示普通用户这一角色。在系统的权限控制体系中普通用户通常具有相对受限的操作权限只能进行一些常规的业务操作通过这个常量可以方便地在代码中对普通用户相关的权限判断、业务逻辑处理等进行标识和区分。
int ROLE_CUSTOME = 0;//普通用户
// 定义整型常量ROLE_ADMIN值为1用来代表管理员用户角色。管理员用户在系统中往往拥有更高的权限能够执行诸如系统配置、数据管理等更多的关键操作借助这个常量可以在代码里清晰地识别出管理员角色并进行相应的权限相关处理。
int ROLE_ADMIN = 1;//管理员用户
}
// 定义一个字符串常量USER_REGISTER_DISTRIBUTE_LOCK_PATH值为"/user_reg"该常量用于指定在分布式环境下用户注册操作时所使用的分布式锁的路径信息。在分布式系统中为了保证用户注册操作的原子性和一致性比如避免多个并发的注册请求同时对用户名、邮箱等唯一性验证和写入数据库等关键操作产生冲突会使用分布式锁进行控制而这个常量就是定义了该分布式锁在相应的分布式锁管理组件如基于Zookeeper等实现的分布式锁中的具体路径。
/**用户注册分布式锁路径***/
public static final String USER_REGISTER_DISTRIBUTE_LOCK_PATH = "/user_reg";
}
}
Loading…
Cancel
Save