Awesome Open Source
Awesome Open Source

Spring-Samples-For-All

spring springboot springcloud jdk author

本项目仓库提供 spring、spring-boot、spring-cloud 的常用整合用例。每个用例都提供详细的图文说明,并给出官方文档的具体链接作为参考。随着 spring 的迭代,本仓库会持续更新,升级版本和丰富用例。

版本说明

spring: 5.1.3.RELEASE

spring-boot:2.1.1.RELEASE

spring-cloud:Finchley.SR2

⭐️⭐️⭐️对大数据技术栈感兴趣的小伙伴可以关注我的新仓库:大数据入门指南

1. spring samples

所有 spring 的项目我都会提供两个版本的 sample:

  • 一个版本是基于 xml 配置,也就是最为常见的配置方式;
  • 另一个版本完全基于代码配置(项目以annotation结尾),这也是目前 spring 官方推荐的更为灵活配置方法,也方便更好的衔接 spring boot 的配置。
samples 描述 官方文档
springmvc-base
springmvc-base-annotation
springmvc 基础、参数绑定、格式转换、数据校验、
异常处理、 文件上传下载、视图渲染
Spring Mvc
spring-aop
spring-aop-annotation
spring 切面编程 Spring AOP
spring-jdbc
spring-jdbc-annotation
spring jdbc-template 的使用 Using JdbcTemplate
spring-mybatis
spring-mybatis-annotation
spring 整合 mybatis Mybatis-Spring
spring-druid-mybatis
spring-druid-mybatis-annotation
spring 整合 druid、mybatis Alibaba druid
spring-redis
spring-redis-annotation
spring 整合 redis 单机 + 集群(jedis 客户端)
spring 整合 redis 单机 + 集群(redisson 客户端)
Redisson
spring-mongodb
spring-mongodb-annotation
spring 整合 mongodb Spring Data MongoDB
spring-memcached
spring-memcached-annotation
spring 整合 memcached(单机 + 集群) Xmemcached
spring-rabbitmq
spring-rabbitmq-annotation
spring 整合 rabbitmq、消息序列化与反序列化 Rabbitmq
Spring AMQP
spring-dubbo
spring-dubbo-annotation
spring 整合 dubbo Dubbo
spring-websocket
spring-websocket-annotation
spring 整合 websocket Spring Websocket
spring-mail
spring-mail-annotation
spring 普通文本邮件、附件邮件、模板邮件 Spring Email
spring-scheduling
spring-scheduling-annotation
spring 定时任务 Task Execution and Scheduling

2. spring-boot samples

samples 描述 官方文档
spring-boot-base spring-boot 基础 spring boot 官方文档
spring boot 中文官方文档
spring-boot-yml-profile yml 语法和多配置切换 Using YAML Instead of Properties
spring-boot-tomcat spring-boot 整合外部容器(tomcat) Use Another Web Server
spring-boot-servlet spring boot 整合 servlet 3.0 Embedded Servlet Container Support
spring-boot-jsp spring-boot 整合 jsp(内置容器) JSP Limitations
spring-boot-data-jpa spring-boot data jpa 的使用 Spring Data JPA
spring-boot-mybatis spring-boot+HikariDataSources 整合 mybatis Mybatis-Spring
Mybatis-Spring-Boot-Autoconfigure
spring-boot-druid-mybtais spring-boot 整合 druid、mybatis Alibaba druid
druid-spring-boot-starter
spring-boot-redis spring-boot 整合 redis Working with NoSQL Technologies
spring-boot-mongodb spring-boot 整合 mongodb Working with NoSQL Technologies
spring-boot-memcached spring-boot 整合 memcached Xmemcached
spring-boot-rabbitmq spring-boot 整合 rabbitmq RabbitMQ support
spring-boot-dubbo spring-boot 整合 dubbo Dubbo
spring-boot-websocket spring-boot 整合 websocket Using @ServerEndpoint
spring-boot-kafka spring-boot 整合 kafka Apache Kafka Support
spring-boot-actuator actuator + Hyperic SIGAR 应用信息监控 Spring Boot Actuator
spring-boot-swagger2 spring-boot 集成 Swagger2 打造在线接口文档 Springfox Reference Documentation

3. spring-cloud samples

samples 描述 官方文档
spring-cloud-Eureka Eureka 服务的注册和发现 Service Discovery: Eureka Server
spring-cloud-Eureka-cluster Eureka 高可用集群搭建 Service Discovery: Eureka Server
spring-cloud-Ribbon Ribbon 客户端负载均衡
RestTemplate 服务远程调用
Client Side Load Balancer: Ribbon
spring-cloud-OpenFeign OpenFeign 声明式服务调用、服务容错处理 Declarative REST Client: Feign
spring-cloud-Hystrix Hystix 服务容错保护
hystrix dashboard 断路器监控
Turbine 断路器聚合监控
Circuit Breaker: Hystrix Clients
Hystrix metrics aggregation with Turbine
spring-cloud-Zuul Zuul 网关服务 Router and Filter: Zuul
spring-cloud-Sleuth-Zipkin Sleuth + Zipkin 服务链路追踪 Spring Cloud Sleuth
spring-cloud-Config-Bus Config 分布式配置中心
集成 Bus 消息总线 实现配置热更新
Spring Cloud Config Client

4.spring分布式session和分布式事务

sample 描述 官方文档
spring-session spring 实现分布式 session spring session
spring boot + spring session spring boot + spring session 实现分布式 session spring session
springboot-druid-mybatis-atomikos spring boot + druid + mybatis + atomikos
配置多数据源、支持分布式事务 ( JTA 方式实现)
Distributed Transactions with JTA

5.参考资料

相关参考文档放在了仓库的 referenced documents 目录下,文件目录如下:

  • Servlet3.1 规范(最终版).pdf
  • Thymeleaf 中⽂参考⼿册.pdf


Get A Weekly Email With Trending Projects For These Topics
No Spam. Unsubscribe easily at any time.
java (31,749
redis (979
mongodb (831
websocket (486
kafka (429
rabbitmq (264
mybatis (246
dubbo (131
zipkin (56
eureka (53
ribbon (44
hystrix (43
zuul (43