Skip to content
/ myboot Public template

myboot是一个基于springboot的项目脚手架

License

Notifications You must be signed in to change notification settings

siu91/myboot

Repository files navigation

License

myboot

myboot是一个基于Spring Boot/Spring Cloud的项目脚手架+Demo

😷疫情无情,人有情,来了就Star⭐一下吧 ☝️

Features

技术栈

  • Spring Boot 相关:
技术 说明 官网
SpringBoot 容器+MVC框架 https://spring.io/projects/spring-boot
Spring Data JPA ORM框架 https://spring.io/projects/spring-data-jpa
mybatis-plus ORM框架工具 https://mp.baomidou.com/
Hibernator-Validator 验证框架 https://hibernate.org/validator
Spring Security 安全框架 https://spring.io/projects/
JWT Tokens方案 https://jwt.io/
QueryDSL 结构化查询工具 https://www.querydsl.com/
HikariCP 号称最快的连接池 https://github.com/brettwooldridge/HikariCP
p6spy sql监控 https://github.com/p6spy/p6spy
Lombok 简化对象封装工具 https://github.com/rzwitserloot/lombok
Swagger-UI API文档工具 https://github.com/swagger-api/swagger-ui
RabbitMq/Kafka 消息队列(待选型) https://www.rabbitmq.com/
Redis 分布式缓存 https://redis.io/
MinIO 对象存储 https://github.com/minio/minio https://hub.docker.com/r/minio/minio/
Spring Boot Admin springboot 服务监控 https://spring.io/projects/
flyway 数据库脚本管理 https://flywaydb.org/
apt-maven-plugin querydsl Maven插件 https://github.com/querydsl/apt-maven-plugin
Docker 应用容器引擎 https://www.docker.com
Jenkins 自动化部署工具 https://github.com/jenkinsci/jenkins

  • Spring Cloud

    spring-cloud

    • Eureka 服务注册&发现框架 (使用Nacos代替)

    • Ribbon 进程内负载均衡器

    • Open Feign 服务调用映射

    • Hystrix 服务降级熔断器(使用Sentinel代替)

    • Zuul 微服务网关

    • Config 微服务统一配置中心 (使用Nacos代替)

    • Bus 消息总线

    • zipkin 调用链追踪

    • 集成Spring Cloud Alibaba 补充相关功能:

      • 服务限流降级:使用 Sentinel 进行流量控制,熔断降级以及系统保护等多个维度保护服务稳定性(完成

      • 服务注册与发现:使用 Nacos 适配 Spring Cloud 服务注册与发现标准,默认集成了 Ribbon 这个客户端负载均衡组件(完成

        • 通过 Nacos Server 和 spring-cloud-starter-alibaba-nacos-discovery 实现服务的注册与发现
      • 分布式配置管理:以 Nacos 作为数据存储支持分布式系统中的外部化配置,配置更改时自动刷新(完成

        • 通过 Nacos Server 和 spring-cloud-starter-alibaba-nacos-config 实现配置的动态变更。
      • 事件驱动:使用 Spring Cloud Stream RocketMQ Binder 来构建事件驱动的微服务实例(进行中

      • 消息总线:使用 Spring Cloud Bus RocketMQ 连接分布式系统中的各个节点(进行中

      • 分布式事务:使用 Seata 高效并且对业务零侵入地解决分布式事务问题(进行中

      • Dubbo RPC:扩展 Spring Cloud 服务调用协议,可使用 Spring Cloud 客户端调用 Dubbo 服务(未计划集成)

      • 阿里云 OSS 集成: 使用阿里云 OSS 服务集成 Spring Resource 资源(未计划集成)

  • 其它(首选Spring 内成熟的技术)

spring-stack

项目结构

 .
├── LICENSE	license 文件
├── README.md README
├── autogenerate 代码生成	         		
├── myboot-demo-ganxu demo		
└── myboot-framework 框架

使用

  • git clone
  • mvn compile

计划

TODO:

  1. 引入Spring Coud
  2. 集成 Spring Coud Alibaba
  3. features 放到 CHANGELOG
  4. 分布式事务集成
  5. 消息队列选型
  6. 前端技术选型 Vue/React
  7. 分库分表选型

Feedback

[email protected]

License

Apache License 2.0