如果你的组员,用 controller 直接调用 mapper,是不是可以直接 fire 了

10 天前
 zhouxiaoxiao

如果你的组员,用 controller 直接调用 mapper ,是不是可以直接 fire 了

17685 次点击
所在节点    程序员
234 条回复
zw2019
10 天前
你这样我怕是找不到工作了
sky3hao9
10 天前
无语, 跟你说不下去, 典型的 java 思维
SyncWorld
10 天前
哈哈 我今天才接手一个项目 Controller 调用 Controller 。。。。我已经淡然了,能用就行
rayyoun0
10 天前
三层架构系统就不要这么讲究了,叫你不把服务接口抽离出来
24Arise
10 天前
如果小作坊无所谓。但如果这人是我团队的,我会强调 1 ~ 2 次,第 3 次还这样我会直接剔出去,我的团队不允许存在不守开发规约的人,因为我做的是面向交付团队的产品,我希望给交付团队的是统一规约的产品便于他们理解及客制化 ~
xulolololololo
10 天前
不清楚你见过把.log 提交到代码仓库的 7-8 年工作经验的混子没?
zhoujx
10 天前
代码逻辑清晰就可以了,你这种感觉是 Java 腌入味了
c3de3f21
10 天前
私以为 `屎山` 主要原因来自:
- `产品`对`业务`的不了解或者`逐步了解`
monmon
10 天前
回复中很多讨论到 “为什么 Service 在只有一个实现类的情况下也要定义一个接口?”,简单来说,这是一个 MVC 分层架构的最佳实践。
为什么是最佳实践,明明实践起来罗里吧嗦的,质疑是非常好的事情,从网上搜索很容易找到这个问题的答案,即这个最佳实践解决了什么问题:
1.解耦设计预留扩展点
2.单元测试:如果 Service 是具体类且直接调用 Mapper/数据库,测试时需启动数据库或 Mock 数据库连接(集成测试),速度分钟级。Service 接口化可 Mock 接口实现,完全隔离数据库,速度毫秒级。
3.依赖注入的规范化
......

每一个问题深入挖掘下去都会引出更多的问题,就会发现架构设计很大一部分解决的是未出现的问题。按照最佳实践开发的收益是显而易见的,多写一个 Service 接口,测试效率提升 100 倍不止,降低扩展成本,架构腐化的风险也会下降。
个人觉得软件开发中工程思维是很重要的,这也大概就是码农和软件工程师的区别吧......
imant
10 天前
哈哈,我这么教条的人,最近也直接调 Mapper 。真特么不想写 service ,简单的一个查询还得通过 service 包装,真累。。
danaesoziommw49
10 天前
8 年前我都是直接 jsp 里执行 jdbc
mb4555
10 天前
这得看项目复杂程度
orlando
10 天前
你们 java 这么恐怖吗
prosgtsr
10 天前
你是技术 leader 你可以做规范啊,没问题的
但是动不动就 fire 有点太离谱了吧
Revenant
10 天前
远古时期的项目直接写一个 SQLHelper ,里面包含 conn ,queryFetch ,getOne, exeute ,close 等函数,可以用到项目倒闭😂
nutting
10 天前
还有 sql 写在前端的才牛
duzhuo
10 天前
@danaesoziommw49 楼主只是代码规范,你们这都有安全问题了哈哈
totoro52
10 天前
@gefangshuai #135 被 spring 毒害了
veightz
10 天前
看具体情况吧, 简单的应勇直接怼简单的表,可能也还好。
还是你的应用的复杂度,在分层和便捷中找平衡点。

想起之前的组件,在 controller 里直接做了非常多的,对于订单表的零散读操作和写操作。
造成后续,梳理需要哪些字段做索引, 哪些字段在什么时候会被更新变得非常困难。。

包括他还在 mapper 层里, 读 ThreadLocal 里的 UserID , 没有 Controller 层里取出来,作为参数透传。。
加上他设计了许多混乱的线程池, 造成串 UserID .. 头疼..
再加上他对使用 @Transactional 充满极大的执念,把很多地方的 TransactionalTemplate 代码改成注解,导致许多地方没有生效,错误信息丢失。

buffer 叠成这样的。。可以考虑 fire 了。。
facebook47
10 天前
@sean250031 你说的很有道理,但是现在这些不都是自动生成的嘛🤣🤣🤣

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://ex.noerr.eu.org/t/1141353

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX