ホームページ  >  記事  >  Java  >  springBoot プロジェクトで一般的に使用されるディレクトリは何ですか?

springBoot プロジェクトで一般的に使用されるディレクトリは何ですか?

王林
王林転載
2023-06-27 13:42:231285ブラウズ

springBoot プロジェクトの共通ディレクトリ

springBoot プロジェクトで一般的に使用されるディレクトリは何ですか?

##springBoot プロジェクトのディレクトリ構造と名前の仕様

SpringBoot をベースに開発する場合のディレクトリ構造と名前の仕様について紹介します。導入を通じて、実際のプロジェクトでディレクトリ構造をどのように計画するか、解決できますか?ディレクトリにもっと標準化された名前を付けるにはどうすればよいでしょうか?各ディレクトリは何を意味しますか? 3 つの質問をお待ちください。

ディレクトリの説明

servicex                 // 项目名
    |- admin-ui          // 管理服务前端代码(一般将UI和SERVICE放到一个工程中,便于管理)
    |- servicex-auth     // 模块1
    |- servicex-common   // 模块2
    |- servicex-gateway  // 模块3
    |- servicex-system   // 模块4
        |- src
            |- main                  // 业务逻辑
                |- assembly          // 基于maven assembly插件的服务化打包方案
                    |- bin           // 模块脚本(启动、停止、重启)
                    |- sbin          // 管理员角色使用的脚本(环境检查、系统检测等等)
                    |- assembly.xml  // 配置文件
                |- java              // 源码
                    |- com
                        |- hadoopx
                            |- servicex
                                |- system
                                    |- annotation     // 注解
                                    |- aspect         // 面向切面编程
                                    |- config         // 配置文件POJO
                                    |- filter         // 过滤器
                                    |- constant       // 存放常量
                                    |- utils          // 工具
                                    |- exception      // 异常
                                    |- controller     // 控制层(将请求通过URL匹配,分配到不同的接收器/方法进行处理,然后返回结果)
                                    |- service        // 服务层接口
                                        |- impl       // 服务层实现
                                    |- mapper/repository // 数据访问层,与数据库交互为service提供接口
                                    |- entity/domain     // 实体对象
                                        |- dto // 持久层需要的实体对象(用于服务层与持久层之间的数据传输对象)
                                        |- vo // 视图层需要的实体对象(用于服务层与视图层之间的数据传输对象)
                                    |- *Application.java  // 入口启动类
                |- resources         // 资源
                    |- static        // 静态资源(html、css、js、图片等)
                    |- templates     // 视图模板(jsp、thymeleaf等)
                    |- mapper        // 存放数据访问层对应的XML配置
                        |- *Mapper.xml
                        |- ...
                    |- application.yml        // 公共配置
                    |- application-dev.yml    // 开发环境配置
                    |- application-prod.yml   // 生产环境配置
                    |- banner.txt    
                    |- logback.xml            // 日志配置
            |- test                  // 测试源码
               |- java               
                    |- com
                        |- hadoopx
                            |- servicex
                                |- system
                                    |- 根据具体情况按源码目录结构存放编写的测试用例
        |- target     // 编译打包输出目录(自动生成,不需要创建)
        |- pom.xml    // 该模块的POM文件
    |- sql            // 项目需要的SQL脚本
    |- doc            // 精简版的开发、运维手册
    |- .gitignore     // 哪些文件不用传到版本管控工具中
    |- pom.xml        // 工程总POM文件
    |- README.md      // 注意事项
External Libraries    // 相关JAR包依赖

Notes

(1). マッパー/リポジトリ、データ アクセス層は、データベースと対話してサービスのインターフェイス (追加、削除、特定のテーブルを変更します。’*Mapper.java’ と ’*Mapper.xml’ がテーブルに対応していることを確認します (関連するクエリがある場合)。Mybatis はマッパーを使用し、JPA はリポジトリを使用します)

( 2). エンティティ/ドメイン、データ エンティティ クラス (Mybatis はエンティティを使用、JPA はドメインを使用)

(3). POJO、VO、DTO、DO、PO、BO:

の意味

  • POJO: これは、ビジネス ロジック処理や永続化ロジックなどが含まれる単純な通常の JAVA オブジェクトです。ただし、これは JavaBean や EntityBean などではなく、特別な役割を持たず、他の Java フレームワーク クラスやインターフェイスを継承または実装しません。 JavaBean プロパティと同様のオブジェクト、プロパティ アクセス用のセッター メソッドとゲッター メソッドを含めることができます。

  • VO(View Object): 表示レイヤーの表示に使用されるビュー オブジェクト。表示レイヤーに表示する必要があるデータを表します。その機能は、特定のページ/コンポーネントに必要なすべてのデータをカプセル化することです。

  • DTO(Data Transfer Object): データ転送オブジェクト。サービス層と永続層の間のデータ転送オブジェクトに使用され、必要なサービス層を表します。データを受け取る/返す。

  • DO(ドメイン オブジェクト): ドメイン オブジェクトは、現実世界から抽象化された有形または無形のエンティティ オブジェクトです。

  • PO (永続オブジェクト): 永続オブジェクト。永続層 (通常はリレーショナル データベース) のデータ構造と 1 対 1 のマッピング関係を形成します。データ テーブルの各フィールド (または複数) は、PO の 1 つ (または複数) の属性に対応します。

  • BO(ビジネス オブジェクト): ビジネス オブジェクトは、ビジネス ロジックをオブジェクトにカプセル化するために使用されます。オブジェクトには、1 つ以上の他のオブジェクトを含めることができます。

  • ##POJO

    永続化後 - > PO; POJO 送信中 - > DTO; POJO はプレゼンテーション層として使用される - > VO

以上がspringBoot プロジェクトで一般的に使用されるディレクトリは何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はyisu.comで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。