代码的编写位置问题
1、控制器写哪些代码
1、接受前端数据
2、调用业务逻辑
3、封装返回数据
4、转换成JSON格式
2、业务逻辑层写哪些代码
除了上面控制器中的代码 和 DAO中的代码以外其余的所有代码都应该写到业务逻辑层
3、DAO写哪些代码
就是数据库的访问代码需要写到DAO层
4、Manager写哪些代码
manager是和DAO处于同一个级别 都是被 Service进行调用
不同点:
DAO写的是 数据库的访问代码
Manager:写的是第三方平台的访问
如果我们的代码中有Manager层的话 那么 这个是属于业务下沉
业务下沉:原本这个代码应该写到 Service层 但是属于第三方的访问 所以 我们单独出一层专门来写第三方的数据访问 这个就叫做业务下沉
举例:
1>、短信的发送
2>、Redis的访问
3>、MQ的访问
Filter:是不是可以写多个 Filter本身是为了规避Java中的什么问题
单一职责的问题:
自己的事情在自己的类里面来完成 不要写到 一个类中
限流 敏感词校验 黑名单 认证
Filter的底层实现实际上就是一个 设计模式(责任链的设计模式)
Filter的底层实现实际上就是一个 设计模式(责任链的设计模式)