java 单机接口限流处理方案
305
2022-06-18
基本约定
源文件
代码使用
文件格式必须是无BOM UTF-8格式
一个文件只声明一种类型,如class和interface不能混写在一个源文件中
缩进
使用4个空格来缩进,IDE可以设置
行长度
每行120个字符
关键字
所有关键字均为小写,如true、false
命名
类名为大驼峰法,如UserModel
类方法名为小驼峰法,如getUserId()
函数使用小写字母加_组合,如get_cookie()
变量名使用小驼峰法,如$userId
常量定义为大写字母加_组合,如IS_DEBUG
代码注释标签
类文件中对类、方法、属性进行注释,使用@param @return @throwns
@param注释写出详解,如@param string $username 用户名
业务模块
路由为小写字母加_组成,如/api/get_user_info
View层负责数据展示
Controller层负责输入参数校验,最外层捕捉异常,调用Logic和View视图层
Logic层负责具体业务逻辑,调用Model层,返回处理数据
Model层负责数据表查询和关联关系
异常类需分清功能,如ParamException表示参数错误,UserException表示自定义异常
异常需分类定义code,使用PHP类常量代替,如
const NO_AUTH = 1000001;
const NO_AUTH_MSG = '不具有权限';
const STATUS_EXCEPTION = 1000002;
const STATUS_EXCEPTION_MSG = '状态异常';
}
数据表文件如有Enum类型,使用PHP类常量代替,如
const STATUS_DELETED = -1;// 已删除 const STATUS_DISABLE = 0;// 禁用 const STATUS_ENABLE = 1;// 正常 const AUTH_GUEST = 1;// 匿名用户 const AUTH_GENERAL_ADMIN = 2;// 普通管理员 const AUTH_SUPER_ADMIN = 3;// 超级管理员 }
其中STATUS和AUTH为数据表映射字段名
Api接口输出,示例
{
"code" : 0,
"msg" : "success",
"data" : {
"userId" : 100 }
}
其中code与msg为必填字段,data为空的情况下不填,示例
{
"code" : 100001,
"msg" : "不具有权限" }
其它
数组,键为字符串时候使用单引号,只有一个键时候使用单行,示例
$arr = [ 'userId' => 100 ];
多个键时候使用多行,示例
$arr = [
'id' => 100,
'username' => 'admin',
];
还有很多很多规范,大家可以去找一些学习!
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~