Skip to content

heibaiying/spring-samples-for-all

Repository files navigation

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