SpringBoot 기반 개발 시 디렉터리 구조와 네이밍 사양 소개를 통해 문제 해결에 도움을 드릴 수 있습니다. 실제 프로젝트의 디렉토리 구조는 무엇입니까? 디렉토리 이름을 좀 더 표준화하는 방법은 무엇입니까? 각 디렉토리는 무엇을 의미하나요? 세 가지 질문을 기다리십시오.
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包依赖
(1). 데이터 액세스 계층인 매퍼/저장소는 데이터베이스와 상호 작용하여 서비스용 인터페이스를 제공합니다(특정 테이블인 ’*Mapper를 추가, 삭제, 수정 및 확인). java’*Mapper.xml’은 테이블에 해당합니다(관련 쿼리가 있는 경우). Mybatis는 매퍼를 사용하고, JPA는 저장소를 사용합니다.
(2) 엔터티/도메인, 데이터 엔터티 클래스(Mybatis는 엔터티를 사용합니다. JPA는 도메인을 사용합니다)
(3) POJO, VO, DTO, DO, PO, BO의 의미:
POJO
: 간단하고 일반적인 JAVA 객체이며 비즈니스 로직을 포함합니다. 처리 또는 지속성 논리 등 그러나 JavaBean, EntityBean 등은 특별한 역할이 없으며 다른 JAVA 프레임워크 클래스나 인터페이스를 상속하거나 구현하지 않습니다. JavaBean 속성과 유사한 객체와 속성 액세스를 위한 setter 및 getter 메서드를 포함할 수 있습니다. POJO
:是一个简单的、普通的JAVA对象,它包含业务逻辑处理或持久化逻辑等。但不是JavaBean、EntityBean等,不具有任何特殊角色,不继承或不实现任何其它JAVA框架的类或接口。可以包含类似与JavaBean属性和对属性访问的setter和getter方法的对象。
VO(View Object)
:视图对象,用于展示层显示,代表展示层需要显示的数据。它的作用是把某个指定页面/组件需要的所有数据封装起来。
DTO(Data Transfer Object)
:数据传输对象,用于服务层与持久层之间的数据传输对象,代表服务层需要接收/返回的数据。
DO(Domain Object)
: 领域对象,就是从现实世界中抽象出来的有形或无形的实体对象。
PO(Persistent Object)
:持久化对象,它跟持久层(通常是关系型数据库)的数据结构形成一一对应的映射关系,数据表中的每个字段(或若干个)就对应PO的一个(或若干个)属性。
BO(Business Object)
: 业务对象,用于把业务逻辑封装为一个对象,这个对象可以包括一个或多个其它的对象。
POJO
VO(View Object)
: 표시 레이어 표시에 사용되는 보기 개체로, 표시 레이어에 표시되어야 하는 데이터를 나타냅니다. 그 기능은 특정 페이지/구성 요소에 필요한 모든 데이터를 캡슐화하는 것입니다. 🎜DTO(Data Transfer Object)
: 서비스 계층과 지속성 계층 간의 데이터 전송 개체에 사용되는 데이터 전송 개체로, 서비스 계층이 수신/반환해야 하는 데이터를 나타냅니다. 🎜🎜🎜🎜DO(Domain Object)
: 도메인 개체는 현실 세계에서 추상화된 유형 또는 무형 엔터티 개체입니다. 🎜🎜🎜🎜PO(영구 객체)
: 지속성 레이어(보통 관계형 데이터베이스)의 데이터 구조와 일대일 매핑 관계를 형성하는 지속성 객체, 데이터의 각 필드 테이블(또는 여러 개)은 PO의 하나(또는 여러 개) 속성에 해당합니다. 🎜🎜🎜🎜BO(Business Object)
: 비즈니스 개체는 비즈니스 논리를 하나 이상의 다른 개체를 포함할 수 있는 개체로 캡슐화하는 데 사용됩니다. 🎜🎜🎜🎜POJO
POJO 전송 중 -> VO🎜🎜🎜🎜🎜🎜위 내용은 springBoot 프로젝트에 일반적으로 사용되는 디렉토리는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!