# archetype-framework **Repository Path**: os-technology/archetype-framework ## Basic Information - **Project Name**: archetype-framework - **Description**: 项目骨架,用于快速创建maven项目使用 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 2 - **Forks**: 0 - **Created**: 2019-02-28 - **Last Updated**: 2023-06-25 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README ## 项目骨架配置基本说明 以boot框架为基础,结合cloud模式搭建的微服务框架。尚未进行任何优化,请以集成为基准进行参考。基本集成简要说明如下: ### 已集成内容(已全部进行对应测试,均测试通过) #### 不依赖外部配置启动 |集成信息|信息说明| |---|---| | springboot| 2.3.x版本,使用时下流行的undertow进行服务启动,抛弃tomcat。 | |feign|不同模块服务间的访问模式。微服务模式为eureka+feign方式| |eureka| 注册中心| |mybatis| 数据库访问配置| |aop| 仅在controller层进行了拦截配置 | |junit5|单元测试配置。注意,是junit5,不是junit4。参见不同模块的test部分| |testablemock|参见service模块的测试包中的impl包| |mybatis-generator|基础代码内容生成器,两种代码生成方式。参见generator模块。数据库以mysql为基础| |sonar| 代码bug扫描配置,已集成支持查看junit5测试结果的覆盖率信息| |knife4j-swagger| 后端接口文档自动生成工具。https://gitee.com/xiaoym/swagger-bootstrap-ui-demo/tree/master| |爬虫彩蛋|(仅供娱乐)| #### 依赖外部配置启动 |集成信息|信息说明| |---|---| |rocketmq|已集成完毕,测试通过。需依赖rocketmq服务方可使用| |redis| 单机版/集群版,需依赖redis服务方可使用。| |zookeeper分布式锁|依赖zookeeper服务使用,尚未进行完整的分布式测试| ### 计划集成 * 定时器集成(elastic-job,需配合zk) * 分布式事务demo(tcc/tx_lcn/seata,seata需配合seata-server服务) * Apollo配置集成(需配合Apollo服务配置) * ELK集成,提供日志监控与查看。参考ELK.md文档 https://mp.weixin.qq.com/s/Rf_MgkoQNHzGnqoY4wyoNg * 分库分表集成 ### 运维部分 * 配合运维工具(如jenkins等),达到一键部署的能力。完成整个安装与操作文档。 ### 项目启动配置步骤 首先打开docs文件夹 1. 将init.sql中的数据库表信息添加至数据库中。 2. 修改application.properties中的数据库连接配置为第一步的数据库连接地址。 3. 启动archetype-framework-server注册中心,然后启动api和feign-client两个启动模块即可。 4. 如果需要配置zookeeper,redis,mq和邮箱服务,则修改application.properties中对应配置即可。 5. 如zookeeper,redis和mq使用条件不允许,将对应类(service模块)的Configuration注解以及相关使用类去掉或者直接删除对应类或者包即可。 ### 其他功能说明 1. javadoc生成工具:使用命令 `mvn javadoc:javadoc -Dmaven.test.skip=true`即可在各个模块下生成相应的文档信息 2. swagger测试导出接口,需要配置`@ApiOperation(value="测试",produces="application/octet-stream")`