这样的JavaWeb设计,是否合理?

pocketdigi 发布于 2016/05/27 17:43
阅读 1K+
收藏 3
我是一名Android开发,最近公司某些原因,客户端版本迭代暂停,在接触JavaWeb项目。现在的项目采用SpringMVC+MyBatis。整个项目controller、business、dao、service都用module分离,所有的business,dao,service都定义成接口+实现,但实现其实都只有一种,找到真正执行的地方往往要跳好几层,请教各位大神,只有一个实现类,这样抽象的意义是什么?另外,属性相同的pojo在不同的层定义成po,vo,dto等等,传递参数时复制属性转换,这样做有意义吗?为什么不直接用一个类?可能实现了解耦,但总感觉这样额外增加了好多工作量,项目也就是两三个人开发,没有很庞大。
加载中
0
螃蟹大叔
螃蟹大叔
看具体业务了,如果未来要做微服务分布式等,分四层是合理的,但是搞那么多model就太麻烦了,简单的项目简单处理就好,如果是后期想扩展成微服务,就得拆分出服务层,所以尽量在service和dao中写简单的增删改查,在业务层中再组合service实现各自的业务逻辑,把service层的接口以及model都提出来独立成一个module
0
景愿
景愿
”梦幻般的架构“
0
空无一长物
鄙人拙见:项目太小是不是体现不出架构的好处
0
南湖船老大
南湖船老大

你说的情况确实属于过度设计。
小项目的话,dao,service不需要定义成接口+实现,直接实现就好。

0
靓仔007
靓仔007
没什么卵用...项目小..完全就是固化思维..
0
南湖船老大
南湖船老大
    之所以出现这个架构的原因,我的猜想是,这套架构可能是公司大项目的架构,可能某个大公司离职的程序员带出来的,然后大家就懒得改了,就拿那套框架做基础开发了
0
p2ng
p2ng

这样严格代码分层,一层调用一层。不能跨层。

缺点就是如你所说,找代码一层层跳。

弄了各种的po、vo、to就是为了不用MAP传参的弊端

0
pocketdigi
pocketdigi
感谢楼上所有同学的回复,看来大家看法比较一致,这样的构架适合大项目,在小项目里确实额外增加了工作量
0
不朽灬达
不朽灬达
如果使用spring进行注入同时使用jdk代理的话,得需要接口才能成功注入
0
CodingNew
CodingNew

相同字段的类,在不同的Module中被令名为VO、PO、DTO,通过复制来赋值。。。。这个真有这么必要?

返回顶部
顶部