V2EX = way to explore
V2EX 是一个关于分享和探索的地方
Sign Up Now
For Existing Member  Sign In
vyuai
V2EX  ›  Java

大佬们, 三层架构先写哪个层比较好呢

  •  
  •   vyuai · Oct 26, 2024 · 5445 views
    This topic created in 550 days ago, the information mentioned may be changed or developed.
    1.先写 DAO -> 再写 Service -> 然后写 Controller

    2.先写 Controller -> 再写 Service -> 然后写 DAO

    个人已经习惯第二种写法了, 是不是第一种更好
    22 replies    2024-11-05 12:03:48 +08:00
    swim2sun
        1
    swim2sun  
       Oct 26, 2024
    让 AI 帮你一次性都写好 (
    vyuai
        2
    vyuai  
    OP
       Oct 26, 2024
    @swim2sun 还在学习中, 还是要手敲比较好, 熟练了就用工具了
    beginor
        3
    beginor  
       Oct 26, 2024 via Android
    用代码生成器,一次全搞定,别纠结
    maix27
        4
    maix27  
       Oct 26, 2024
    第二层舒服点吧。
    sagaxu
        5
    sagaxu  
       Oct 26, 2024
    先写哪个都行。

    我一般按照数据流向来写,Controller -> Service -> DAO ,Controller 写完可以先发布到测试环境给前端调调看了
    lyusantu
        6
    lyusantu  
       Oct 26, 2024
    走一步看一步就是 2
    提前规划就是 1
    fanchenio
        7
    fanchenio  
       Oct 26, 2024
    按照你自己的思路写就行,哪步开始都可以,我是 Service -> DAO -> Controller 。
    wchcastle
        8
    wchcastle  
       Oct 26, 2024 via iPhone
    先定义 api spec ,然后生成脚手架。业务逻辑可以自己写。
    prosgtsr
        9
    prosgtsr  
       Oct 26, 2024 via iPhone
    我是 service-dao-controller
    proxychains
        10
    proxychains  
       Oct 26, 2024
    dao -> service -> controller
    markgor
        11
    markgor  
       Oct 26, 2024
    dao -> service -> controller -> service -> dao -> controller -> ... loop
    lsry
        12
    lsry  
       Oct 26, 2024
    controller 這樣可以儘快和前端對接,縮短開發時間
    vyuai
        13
    vyuai  
    OP
       Oct 26, 2024
    感谢各位大佬
    DIO
        14
    DIO  
       Oct 28, 2024
    如果设计完备,就从底层写起,其他情况就是界面需要啥现场手搓
    qloog
        15
    qloog  
       Oct 28, 2024
    dao -> service -> controller

    先有数据模型,再写业务逻辑,最后写参数检查和调用
    模型会让你把底层思考透彻,业务逻辑就是写具体的业务逻辑,写完前面俩,最后一个自然而然就有了
    carytseng
        16
    carytseng  
       Oct 28, 2024
    设计表,构建实体,填充实体,写 dao 层,写 service 并组合 dao ,写 controller 加验证判空之类,最后的最后优化下,要不要加锁,要不要写一些事务处理
    Kaiv2
        17
    Kaiv2  
       Oct 28, 2024
    unit test -> controller || service -> dao
    MYlyc
        18
    MYlyc  
       Oct 28, 2024
    现在是工作中是 2 ,现写 controller
    写完 controller 发测试,前端可以照着 swagger 写
    devilweime
        19
    devilweime  
       Oct 28, 2024
    dao 层,顺便确认下表设计有没有问题
    itechify
        20
    itechify  
    PRO
       Oct 28, 2024 via Android
    先表设计,再 controller 定义接口,写好 service 看看需要 repository 哪些接口再写 dao
    spritecn
        21
    spritecn  
       Oct 30, 2024
    表设计 ->mapper(一般是空的) -> serviceImpl -> serviceInterface ->controllerInterface - controllerImpl ->拉起来测

    我目前这么写,一般不会在 xml 或 mapper 里写 sql,所以我没有 DAO 层
    Aresxue
        22
    Aresxue  
       Nov 5, 2024
    Controller -> Mapper -> Service ,外部定义越早越好,对接的前端和其它三方可以直接查看 Controller 申成的接口文档,Mapper 其实主要指的是底层模型,这块是需要和老板/产品达成一致的,Service 指的是内部服务一般来说调整更自由,不管是改名字还是职责还是拆分都好说一些。
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   5401 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 89ms · UTC 09:04 · PVG 17:04 · LAX 02:04 · JFK 05:04
    ♥ Do have faith in what you're doing.