java开发 结构分层与领域模型的思考

2021-04-19  本文已影响0人  dylan丶QAQ

最近因为领域模型的原因重新来思考这个问题。一起干饭!


本章主要内容


问题:由于是个人开发,在项目开发中,使用EasyCode进行代码生成,所以各层使用的领域模型都是一样的,controller层使用实体类去接受各种参数,正常使用是没有问题,但是在项目运行的过程中,在调用接口的时候会因为多传参数导致意想不到的问题,更重要的是如果有人使用接口进行注入攻击的时候,会更加的痛苦。

1.如何分层

之前的开发过程中,均是使用 controller,service, mapper三层。最近在看了许多blog后,借鉴总结了一下,并会在以后的日常开发中使用:

这里要解释一下Manager 层,在我的理解,Manager层即是对service层的扩展与提取,提取在于:不至于让service层过于庞大,让一些特定的操作在特定的包、类中实现,也能体现出整洁性😀。扩展在于:扩展对MVC的扩展😄。

2.如何定义领域模型

因为之前的原因,所以现在项目中,我使用到的领域模型如下:

其中,DO即最基本的结构,与数据库表结构对应,取出后,可以根据情况在service中转VO或DTO,之后向外传输,中间的转型只有一次即可。可能在大型的项目会有更细的划分。之后有get到再与大家分享。

3.一般命名规则

分层领域模型规约:

领域模型命名规约:

上一篇 下一篇

猜你喜欢

热点阅读