项目结构分层
- controller
- service (包含domain以及mapper的注入类)
- domain
- entity
- model (充血模型,用户强相关业务[业务行为 | 业务属性相关], 不要存在任何dao的注入)
- UserModel.java
- OrderModel.java
- GoodsModel.java
- dto (请勿添加逻辑在此,dto只作为数据传输的结构)
- UserDto.java
- OrderDto.java
- GoodsDto.java
- model (充血模型,用户强相关业务[业务行为 | 业务属性相关], 不要存在任何dao的注入)
- ShoppingCartDomain.java (商品领域 -- 购物车子领域, model作为入参,通过service调用mapper返回model,解决复杂逻辑)
- SubmitOrderDomain.java (订单领域 -- 下单子领域)
- ...
- entity
- mapper (对应表的mapper, 例如使用mybatis plus生成的mapper)
- UserMapper.java
- GoodsMapper.java
- OrderMapper.java
整个结构的调用流程
controller -> service -> domain(如果业务复杂,service则会调用该层,否则service直接调用mapper) -> mapper
项目代码demo后续补充
代码会补充在 github.com/specialbisc…, 感兴趣的可以关注下