# 工程结构

工程结构示例:http://119.255.194.80/hos/demo/hos-app-demo
用户名/密码: hosuser/99ahivPJt
示例工程结构如下:

hos-app-demo
|   project-strcutre            
|   |   project-strcutre-1          单体版方案一
|   |   project-strcutre-2          单体版方案二
|   |   project-strcutre-3-1        单体版方案三的第一种方式
|   |   project-strcutre-3-2        单体版方案三的第二种方式
|   |   project-strcutre-4          单体版方案四
|   |   project-strcutre-5          微服务
|   code-example                    代码示例:包含快速快速、开发组件中的示例代码
|   |   hos-mediway-boot-demo       单体版代码示例
|   |   hos-mediway-cloud-demo      微服务版代码示例

本文档中提到的hos仅作为业务示例,开发人员在创建相关目录或文件时可以修改成其它名称,比如hishrpoa等,请根据自己实际业务进行修改。

将业务模块根据module分为三部分:

  • hos-business-common 中包含公用的annotation(自定义注解)、enums(枚举)、exception(自定义异常)等等
  • hos-api 包含所有业务的api子模块,可以被其他业务模块引用,且不会暴露核心代码,主要包括实体类、feignClient,
  • hos-service 业务模块的service子模块,不提供给其他模块使用
hos-mediway-cloud                                               
|   hos-doc                                         项目的一些文档,如初始化SQL等
|   hos-business-parent                             业务模块根节点
|   |   hos-business-common                         带有业务性质的common
|   |   |   com.mediway.hos                                 
|   |   |   |   annotation                          自定义注解
|   |   |   |   config                              配置类
|   |   |   |   constant                            常量类
|   |   |   |   enums                               公共枚举类,其他服务也可以使用
|   |   |   |   exception                           业务模块自定义的异常类
|   |   |   |   ilter                               业务模块自定义的filter
|   |   |   |   utils                               业务模块自定义的util,除了系统提供的util
|   |   hos-api                                     所有业务的api子模块,可以被其他业务模块引用,且不会暴露核心代码,主要包括实体类、feignClient
|   |   |   hos-contract-api                        contract模块的api(示例)
|   |   |   |   com.mediway.hos                     
|   |   |   |   |   contract                        合同模块(示例)
|   |   |   |   |   |   feign                       供其他服务调用的feignClient
|   |   |   |   |   |   model                       
|   |   |   |   |   |   |   entity                  实体,对应表,需要继承BaseEntity   
|   |   |   |   |   |   |   vo                      视图对象,用于展示层,封装某个指定页面(或组件)的所有数据
|   |   |   |   |   |   |   dto                     数据传输对象,用于不同服务之间的数据传递
|   |   |   hos-user-api                            user模块的api(示例)
|   |   |   |   com.mediway.hos                 
|   |   |   |   |   user                            用户模块(示例)
|   |   |   |   |   |   feign                       供其他服务调用的feignClient
|   |   |   |   |   |   model                       
|   |   |   |   |   |   |   entity                  实体,对应表,需要继承BaseEntity   
|   |   |   |   |   |   |   vo                      视图对象,用于展示层,封装某个指定页面(或组件)的所有数据
|   |   |   |   |   |   |   dto                     数据传输对象,用于不同服务之间的数据传递
|   |   hos-service                                 业务模块的service子模块,不提供给其他模块使用
|   |   |   hos-contract-service                    contract模块的service(示例)
|   |   |   |   src/main/java
|   |   |   |   |   com.mediway
|   |   |   |   |   |   HosApplication.java         启动类
|   |   |   |   |   |   hos.contract                合同模块(示例)
|   |   |   |   |   |   |   |   controller
|   |   |   |   |   |   |   |   mapper              需要继承BaseMapper
|   |   |   |   |   |   |   |   service             需要继承BaseService
|   |   |   |   |   |   |   |   |   impl            需要继承BaseServiceImpl,实现service
|   |   |   |   |   |   |   |   annotation          自定义注解
|   |   |   |   |   |   |   |   config              配置类
|   |   |   |   |   |   |   |   constant            常量类
|   |   |   |   |   |   |   |   enums               枚举类
|   |   |   |   |   |   |   |   exception           业务模块自定义的异常类
|   |   |   |   |   |   |   |   filter              业务模块自定义的filter
|   |   |   |   |   |   |   |   utils               业务模块自定义的util,除了系统提供的util
|   |   |   |   src/main/resource
|   |   |   |   |   XXMapper.xml        
|   |   |   hos-user-service                        user模块的service(示例)
|   |   |   |   src/main/java
|   |   |   |   |   com.mediway.
|   |   |   |   |   |   HosApplication.java         启动类
|   |   |   |   |   |   hos.contract                合同模块(示例)
|   |   |   |   |   |   |   |   controller
|   |   |   |   |   |   |   |   mapper              需要继承BaseMapper
|   |   |   |   |   |   |   |   service             需要继承BaseService
|   |   |   |   |   |   |   |   |   impl            需要继承BaseServiceImpl,实现service
|   |   |   |   |   |   |   |   annotation          自定义注解
|   |   |   |   |   |   |   |   config              配置类
|   |   |   |   |   |   |   |   constant            常量类
|   |   |   |   |   |   |   |   enums               枚举类,其他服务也可以使用
|   |   |   |   |   |   |   |   exception           业务模块自定义的异常类
|   |   |   |   |   |   |   |   filter              业务模块自定义的filter
|   |   |   |   |   |   |   |   utils               业务模块自定义的util,除了系统提供的util
|   |   |   |   src/main/resource
|   |   |   |   |   XXMapper.xml        
|   |   ....                                        其他组件陆续提供中
|   hos-managecenter                                管理中心,提供各个组件的管理服务,独立启动的jar   
|   |   managecenter-gateway                        网关组件
|   |   ...                                         其他组件陆续提供中
|   hos-generator                                   代码生成器