代码分层
Last updated
Last updated
代码核心分为三层:请求处理层、业务逻辑层和数据持久层。
对于采用消息驱动设计的系统,需要引入消息处理层;对于需要远程调用其他服务的系统,需要引入远程调用层,负责远程调用或接口适配等工作。
对外暴露 RESTful 接口,进行控制转发、参数处理、结果封装、异常处理等。
单条查询时,需要处理业务逻辑层返回的Optional
对象,获取实际对象或抛出异常。
核心业务逻辑处理。根据需要组合数据层、远程调用层等,完成业务逻辑操作,处理实体到DTO的转换,根据需要缓存数据或发送事件通知。
简单来说,业务逻辑层承担了除请求处理层和数据持久层之外的绝大多数职责。
单条查询时,应该返回数据的Optional
对象,由请求处理层进行进一步处理。
与底层 MySQL、Oracle、Redis 等进行数据交互。
处理其他模块的消息,调用业务层进行处理,(如果需要)返回处理结果。
使用 Feign 或者其他技术定义的远程接口。