# SpringbootBase **Repository Path**: wqwadmin/SpringbootBase ## Basic Information - **Project Name**: SpringbootBase - **Description**: 使用Springboot搭建基础开发环境,集成mybatis+mybatis自动化生成工具+redis+rabbitmq+elasticsearch - **Primary Language**: Unknown - **License**: MIT - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 1 - **Created**: 2024-05-30 - **Last Updated**: 2024-05-30 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README 集成: >- 集成Mybatis >- 集成Mybatis自动化生成工具 >- 封装集成Base类,简化开发 >- 集成全局异常处理 >- 集成请求日志打印和日志跟踪 >- 集成调用过程打印 >- 集成@CheckNull注解 >- 集成SpringRedis >- 集成Rabbitmq >- 集成Elasticsearch >- 集成excel导入导出 >- 集成pdf模板生成工具 >- 集成elk日志收集 >- 集成HttpClientUtil >- 集成Spring Retry重试机制 ## 集成Mybatis 1. 实体类在 `com.lyf.domain` 2. xml文件在 `resources\mapper` ## mybatis自动化生成工具 1. 配置文件在 `resources\generatorConfig.xml` 2. 生成 po dao xml 在 `test.java.com.lyf` 避免影响代码 - https://www.cnblogs.com/linyufeng/p/13177279.html ## 集成封装base类,简化开发 1. 基础封装类在 `com.lyf.base` 2. 解决最基本crud以及分页问题,"0代码"完成单表crud以及分页 3. 查询时,对象必须继承 `BaseQuery.java`放在 `com.lyf.domain.query` ## 集成全局异常处理 1. 文件在 `com.lyf.exception` 2. 自定义参数异常`ParamsException`和断言`AssertUtil` 2. 事务回滚加注解 `@Transactional` ## 集成日志打印 1. 记录每次请求所有信息 `com.lyf.aop.WebLogAspect` 2. 增加日志trace_uuid方便定位操作链路 `resources\logback-spring.xml` 3. 在aop入口进行标识 `MDC.put("trace_uuid", UUID.randomUUID().toString());` - https://www.cnblogs.com/linyufeng/p/13176818.html ## 集成调用打印 1. 记录方法被调用的方法链 `com.lyf.annotation.LogTrace` 2. 使用加注解 `@LogTrace` - https://www.cnblogs.com/linyufeng/p/13176818.html#nav_2 ## 开发集成@CheckNull注解 1. 自定义注解`@CheckNull`校验非空参数 2. 切面类 `CheckNullAspect` - https://www.cnblogs.com/linyufeng/p/13177173.html ## 集成 SpringRedis 1. 配置文件在 `com.lyf.redis.RedisConfig` 2. 封装RedisUtil `com.lyf.redis.RedisUtil` 3. 集成SpringCache,支持对key指定过期时间 ## 集成Rabbitmq 1. 配置文件在 `com.lyf.rabbit.RabbitConfig` 2. 定义消息队列,指定ack方式,定义死信队列 - https://www.cnblogs.com/linyufeng/p/9885645.html ## 集成Elasticsearch 1. 使用 `spring-boot-starter-data-elasticsearch` 集成 2. 配置类 `com.lyf.domain.elastic.GoodsDoc` 定义索引 - https://www.cnblogs.com/linyufeng/p/13045134.html ## 集成excel导入导出 1. `com.lyf.util.ExcelUtil`工具类 2. `@ExcelFiled`注解指定Bean与excel列的对应关系(这种思想很赞!!!) - https://www.cnblogs.com/linyufeng/p/13177414.html ## 集成pdf模板生成工具 1. `com.lyf.util.PdfUtil`工具类 2. `templates/zhengshu.ftl`通过freemarker模板生成对应的pdf ## 集成elk日志收集 1. `logback-spring.xml`配置文件 2. `logstash.host`日志服务器 - https://www.cnblogs.com/linyufeng/p/13203537.html ## 集成HttpClientUtil 1. `com.lyf.util.HttpClientUtil`工具类 ## 集成Spring Retry重试机制 1. 添加注解`@EnableRetry`到启动类 2. 使用示例在`com.lyf.service.UserService.retry()` --------------------------- 项目地址: https://gitee.com/haizing/SpringbootBase.git