# SpringBootDemo
**Repository Path**: smalltrees/SpringBootDemo
## Basic Information
- **Project Name**: SpringBootDemo
- **Description**: SpringBoot 集成各个功能模块Demo案例。
- **Primary Language**: Java
- **License**: GPL-2.0
- **Default Branch**: master
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 1
- **Forks**: 0
- **Created**: 2020-12-03
- **Last Updated**: 2020-12-18
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README
🚀🚀SpringBootDemo🚀🚀
🔥 Spring官网
🏆 SpringBootDemo地址
---
#### :monkey_face: 介绍
:four_leaf_clover: 基于SpringBoot开发的Demo案例,集成不同的功能模块,供后续持续学习。
#### :tropical_fish: 软件架构
1. :palm_tree: JDK 1.8.0_172
2. :palm_tree: Spring Boot 2.4.0
3. :palm_tree: IDEA 2020.03
4. :palm_tree: Mysql 5.7
#### :panda_face: 使用说明
1. :herb: 初始化数据库和表:数据库运行SQL文件夹下的springboot_demo.sql,生成表和存储过程等
2. :mushroom: 涉及连接数据库的,将项目application.properties或者yml文件中数据库URL的IP调整你本地
3. :cactus: :evergreen_tree: :deciduous_tree: :blossom:
#### :dog: 模块说明
1. :tulip: springboot_helloworld
* 项目惯例:spring boot 控制台输出 "hello world"
2. :leaves: springboot_mysql
* 连接mysql数据库,实现简单的CRUD
3. :maple_leaf: springboot_mybatis
* 集成mybatis,使用注解和xml配置方式实现复杂CRUD
4. :sunflower: springboot_mybatisplus
* 集成苞米豆的Mybatis-Plus,实现CRUD操作。
* 条件配置(QueryWrapper)可以查看此博客:memo: https://blog.csdn.net/small_trees/article/details/110677002
5. :seedling: springboot_lombok
* 集成lombok,省去模板代码的编写eg:getter、setter
6. :christmas_tree: springboot_log4j
* 集成log4j2,配置日志输出:console、file、滚动存入file
7. :palm_tree: springboot_yml
* 读取*.yml
8. :deciduous_tree: springboot_properties
* 读取*.properties
9. :cactus: springboot_eureka_server
* 集成服务注册中心Eureka,实现服务管理
* springboot_eureka_client_provider 注册到Eureka的服务提供方Demo
* springboot_eureka_client_customer 注册到Eureka的服务调用方Demo
* 通过http协议,controlller调用controller,restful风格的接口
10. :christmas_tree: springboot_eureka_client_provider_ribbon
* 与springboot_eureka_client_provider一起启动,customer微服务实现负载均衡
* 需要保证注册到Eureka的微服务注册信息和controller接口一致
* 负载均衡的配置主要在springboot_eureka_client_customer
* 本地测试时host文件加入 127.0.0.1 myEureka
* 注意:eureka client包中已经集成了ribbon,重复引入Ribbon依赖后会导致冲突,引起No instances available for XXX client中已经集成了ribbon,重复引入Ribbon依赖后会导致冲突,引起No instances available for XXX 报错
11. :cactus: springboot_quartz
* 集成Quartz定时器
* 两种方案创建定时Job,Cron表达式配置触发时间
12. :christmas_tree: springboot_redis
* 集成Redis starter 读写Redis数据库[Redis下载地址](https://github.com/tporadowski/redis/releases)
* 封装RedisUtils工具类,简化操作
13. :deciduous_tree: springboot_activeMQ
* 集成ActiveMQ消息,[ActiveMQ下载地址](http://activemq.apache.org/components/classic/download/)
* 点对点消息发送与监听,发布/订阅模式接收消息
* 优势:异步处理、应用解耦、流量削峰、日志中转
14. :tanabata_tree: springboot_eureka_multiserver_01、02、03
* springboot多注册中心Demo,此Demo配置3个eureka server, 两两注册即可
* 可以分多个项目,也可以在一个项目中配置多个application文件,打包时选择不同配置
15. :baby: springboot_swagger
* 集成Swagger,RESTful接口的文档在线自动生成、功能测试功能框架
* 本地访问地址http://localhost:8080/swagger-ui.html
#### :cat: 参与贡献
1. :evergreen_tree: Fork 本仓库
2. :evergreen_tree: 新建 Feat_xxx 分支
3. :evergreen_tree: 提交代码
4. :evergreen_tree: 新建 Pull Request
#### :chicken: 特技
1. :blossom: 使用 Readme\_XXX.md 来支持不同的语言,例如 Readme\_en.md, Readme\_zh.md
2. :blossom: Gitee 官方博客 [blog.gitee.com](https://blog.gitee.com)
3. :blossom: 你可以 [https://gitee.com/explore](https://gitee.com/explore) 这个地址来了解 Gitee 上的优秀开源项目
4. :blossom: [GVP](https://gitee.com/gvp) 全称是 Gitee 最有价值开源项目,是综合评定出的优秀开源项目
5. :blossom: Gitee 官方提供的使用手册 [https://gitee.com/help](https://gitee.com/help)
6. :blossom: Gitee 封面人物是一档用来展示 Gitee 会员风采的栏目 [https://gitee.com/gitee-stars/](https://gitee.com/gitee-stars/)