- 日志打印级别: FATAL > ERROR > WARN > INFO > DEBUG > TRACE
当前项目debug级别已关闭
- 请求日志:不需要打印,当前项目网关已进行处理、avic-parent-core的链路追踪拦截器TraceFilter也已经处理请求Log
- 响应日志:暂时没处理,如果都需要开启打印,那么可以实现一个响应后置拦截器
ResponseBodyAdvice<Object>
,减少业务代码量
- 业务代码:进行使用占位符进行替换
log.error("参数错误:{}",params);
- 目前打印日志很少使用LogFactory了,基本都用lombok提供的日志门面,为了减少字节数,降低磁盘IO压力,尽量@Slf4j(topic = "name")
(1)LogFactory默认输出:com.avic.example.log.LogFactoryExample ==> balabalaba
(2)@Slf4j默认输出:c.a.e.l LogFactoryExample ==> balabalaba
(3)@Slf4j(topic = "LogFactoryExample")输出:LogFactoryExample ==> balabalaba
- 私有构造,禁止new
- 方法进行静态处理
@NoArgsConstructor(access = AccessLevel.PRIVATE)
public class ExampleUtils {
public static String demo() {
return "";
}
}
- 属性进行final处理,禁止修改
- 仅对外提供get方法,禁止set属性
@Getter
@AllArgsConstructor
public enum XxxEnum {
A(1, "a", "a描述"),
B(3, "b", "b描述"),
;
//id值,按照老的项目顺位增加
private final Integer id;
//名称
private final String name;
//描述
private final String description;
public static ChannelEnum getChannel(Integer id) {
return EnumUtil.getBy(ChannelEnum::getId, id, JD);
}
}
- github找的现成的图,无视eden-demo-layer
- 若有想法,可以自己去学习,里面还有阿里的cola架构规范demo。Github地址
- DAO层在当前项目中,叫做repository
![阿里开发手册架构规范](https://camo.githubusercontent.com/fff44c957237dd62dd52e45070ee206952be29b79d7e96391ecfb4e712d8afc8/68747470733a2f2f63646e2e6a7364656c6976722e6e65742f67682f31383530303530373434352f64726177696e672d6265642f6e6f76612f2545392539382542462545392538372538432545362539452542362545362539452538342545382541372538342545382538432538332e706e67)