lihongjie0209
V2EX  ›  Java

Mybatis 中的 SQL 模板会不会导致部分业务逻辑分散的 SQL 文件中?

  •  
  •   lihongjie0209 · Mar 8, 2019 · 2823 views
    This topic created in 2650 days ago, the information mentioned may be changed or developed.

    刚刚看到一段 Mybatis 的 mapper 文件,如果这么写代码,那么检查 BUG 的时候是不是需要检查 Java 代码以及 SQL mapper 文件两个地方?

    https://gist.github.com/lihongjie0209/eb3c53cc504b10746fe5171a5ccb28b1

    4 replies    2019-04-09 15:04:44 +08:00
    raphael008
        1
    raphael008  
       Mar 8, 2019   ❤️ 1
    这时候一个经典的问题就来了,业务逻辑是用代码处理好呢还是用 SQL 处理好呢。通常我选择将业务逻辑拆成一个个模块化 SQL,通过传入参数返回结果,SQL 中处理计算细节,代码里处理业务逻辑。

    也有人是把所有业务逻辑全写 SQL 里,然后直接调用无返回结果,个人感觉这样后期维护简直是噩梦,反复权衡之后用了上面提到的那种做法。
    gejun123456
        2
    gejun123456  
       Mar 8, 2019 via iPhone
    完全可以把业务逻辑写在 java 代码里面 mybatis 的 sql 能少做逻辑就少做
    lihongjie0209
        3
    lihongjie0209  
    OP
       Mar 9, 2019
    @raphael008
    @gejun123456

    我也觉得应该使用代码维护业务逻辑。
    wlfeng
        4
    wlfeng  
       Apr 9, 2019
    根据场景,怎么方便怎么来
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   943 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 32ms · UTC 19:41 · PVG 03:41 · LAX 12:41 · JFK 15:41
    ♥ Do have faith in what you're doing.