代码目录结构

1、有人是这样规划目录的

    conf   -->        数据库连接池(因使用了配置服务器,必须有)
    model  -->        实体类
    controller  -->   接口访问层
    mapper -->        数据库访问层
    service    -->    业务处理层
       impl   -->    业务处理实现类
    util   -->        工具类
    vo     -->        表现层对象

 2、还有人是这样的

 

3、按照DDD,有人建议这样

- application
- interfaces
- domain
- repositories
- gateways
      - controllers
      - persistence
      - mq
      - client
      - ...
application 对应DDD的应用层,主要内容为该限界上下文中所有的应用服务
interfaces 对gateways中除persistence之外的抽象,包括访问除数据库之外其他外部资源的抽象接口,以及访问第三方服务或其他限界上下文服务的抽象接口
domain 对应DDD的领域层,为了更好地体现repositories在基础设施层扮演的与外部资源打交道的网关语义,将repositories单独分离
repositories 代表DDD中战术设计阶段的资源库,如果不复杂,可合并到domain
gateways 对应DDD的基础设施层,其下可以视外部资源的集成需求划分不同的包
1)controller是对客户端提供接口的北向网关,等同于上下文映射中开放主机服务(OHS)的概念
2)persistence对应了repositories抽象
3)其余网关对应interfaces抽象,其中client包下的实现类与interfaces下的对应接口组合起来,等于上下文映射中“防腐层(ACL)”的概念

4、还有这样的

 -- application 应用层
    -- event 事件
        -- publish  事件发布
        -- subscribe 事件订阅
    -- service 应用服务 
 -- domain  领域层
    -- aggregate名称 聚合根目录
        -- entity   实体
        -- event    事件
        -- repository   仓储
        -- service  领域服务
    -- aggregate名称
        -- entity   实体
        -- event    事件
        -- repository   仓储
        -- service  领域服务
 -- infrastructure 基础设施层
    -- config 存放配置相关
    -- util  存放第三方服务
        -- eventbus 事件总线
        -- mq 消息中间件

5、目录结构1中,controller差不多就包含了api/rest

 因为spring mvc是mvc结构,controller是这样的

@controller
public class xxxController{
 @RequestMapping("/hello")
 public ModelAndView handleRequest(javax.servlet.http.HttpServletRequest httpServletRequest, 
 javax.servlet.http.HttpServletResponse httpServletResponse) throws Exception {
    ModelAndView mav = new ModelAndView("index");
    mav.addObject("message", "Hello Spring MVC");
    return mav;
}
}
代码大概就是这样的。
业务处理,返回数据。这个就是M(模型)层。
JSP或其他模板文件,就是V(视图)层。
这个controller对象,就是C(处理器)层。

springboot还是保留了controller这个单词(这个词在mvc中有意义,在ddd中没有意义)。同时也有rest这个词。

@RestController
public class Restful {
    
    @GetMapping("/hello1")
    public String hello1(@RequestParam String name,@RequestParam int age) {

在dropwizard中就没有controller这个单词了。他是标准的rest,认为所有东西都是Resource(资源)

public class HelloWorldResource {
    @GET
    @Path("/hello-world")
    public Saying sayHello(@QueryParam("name") Optional<String> name) {

要生成Java代码目录结构图,可以使用一些工具和技术。 首先,你可以使用Eclipse这样的集成开发环境(IDE)来创建一个Java项目。在Eclipse中,你可以使用“New Project”菜单创建一个新的Java项目,并选择一个合适的项目类型,如Maven或Gradle。 一旦项目创建完成,你可以在项目的根目录下找到“src”文件夹,这个文件夹包含了你的Java代码。在“src”文件夹下,你可以根据自己的需求,创建不同的Java包和类。 在每个Java包中,你可以创建Java类。你可以使用Eclipse提供的快捷键或者右键菜单,在特定的包上选择“New”->“Class”来创建一个新的Java类。在类的内部,你可以编写你的Java代码。 当你的Java项目的代码文件逐渐增多时,你可以使用Eclipse的导航视图来查看你的代码目录结构。导航视图通常位于Eclipse的左侧,可以通过选择“Window”->“Show View”->“Package Explorer”来打开。在导航视图中,你将看到你的Java包和类的层次结构。 如果你想要生成一个完整的代码目录结构图,你可以使用一些代码自动生成工具,如Javadoc或PlantUML。Javadoc是一种用于生成Java文档的工具,它可以生成关于你的代码的HTML文档,其中包含了你的代码目录结构和类的层次结构。PlantUML是一种基于文本的工具,它可以使用类似UML的语法来描述你的代码结构,并生成一个可视化的目录结构图。 总之,要生成Java代码目录结构图,你可以使用Eclipse来创建和管理你的代码,并使用Javadoc或PlantUML等工具来生成目录结构图。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值