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

Java web 工程项目结构问题

  •  
  •   specita · Jun 8, 2018 · 3633 views
    This topic created in 2892 days ago, the information mentioned may be changed or developed.
    rt, 之前 web 工程一直是按照分层划分( maven 父子工程),比如:
    project
    -api
    -common
    -service
    -dao
    -remote
    -web
    --controller

    除了 web 是 war 包,其它都是 jar 包

    现在有一个业务系统,我想按照业务模块先划分,再分层可以吗,比如:
    project
    -common
    -remote
    -business1
    --api
    --service
    --dao
    --dto
    -business2
    -business3
    -web
    --controller

    请问下有哪个开源项目是这样搭建的吗,主要没有这样搭过,怕有坑,想找个参照
    我认为这样的好处就是分工明确,拆子系统会方便些,但会让结构变复杂,不好管理
    3 replies    2018-06-13 15:56:22 +08:00
    night98
        1
    night98  
       Jun 8, 2018 via Android
    可以,就是有点不方便扫包。
    shalk
        2
    shalk  
       Jun 8, 2018 via iPhone
    可以。要注意依赖问题,做法是把 service 分成 service 和 seviceimpl,不同 busi 之间,一方面只允许依赖 service,不要依赖实现,实现统一在 web 的 pom 里加。偶尔要处理循环依赖的。
    donnior
        3
    donnior  
       Jun 13, 2018
    没有问题的,如上面说的,要处理好模块边界及依赖,这种架构继续进化就是微服务了
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   3742 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 46ms · UTC 10:25 · PVG 18:25 · LAX 03:25 · JFK 06:25
    ♥ Do have faith in what you're doing.