Skip to content

imyom25/spring-reactive-sample

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Spring Reactive Sample

This is a sandbox project for demonstrating Reactive Streams support in Spring framework and Spring ecosystem.

I've also maintained a series of repos related to ReativeStreams and the latest Spring 5.

Docs

Read online: https://hantsy.github.io/spring-reactive-sample/

Sample Codes

The following table list all sample codes related to the above posts.

Spring Samples

name description
vanilla The initial application, includes basic spring-webflux feature, use a main class to start up the application
vanilla-jetty Same as vanilla, but use Jetty as target runtime
vanilla-tomcat Same as vanilla, but use Reactor Netty as target runtime
vanilla-undertow Same as vanilla, but use Undertow as target runtime
java8 Java 8 CompletableFuture and @Async example
java9 Same as vanilla, Java 9 Flow API support is not ready in Spring 5.0.0.REALESE, planned in 5.0.1, see issue SPR-16052 and the original discussion on stackoverflow
rxjava Same as vanilla, but use Rxjava instead of Reactor
rxjava-jdbc Accessing database with rxjava-jdbc. NOTE: rxjava-jdbc is a wrapper of blocking Jdbc APIs
rxjava2 Same as vanilla, but use Rxjava2 instead of Reactor
rxjava2-jdbc Accessing database with rxjava2-jdbc. NOTE: rxjava2-jdbc is a wrapper of blocking Jdbc APIs
rxjava3 Same as vanilla, but use Rxjava3 instead of Reactor, since Spring 5.3.0
smallrye-mutiny Same as vanilla, but use SmallRye Mutiny instead of Reactor, since Spring 5.3.10
war Replace the manual bootstrap class in vanilla with Spring ApplicationInitializer, it can be packaged as a war file to be deployed into an external servlet container.
routes Use RouterFunction instead of controller in vanilla
register-bean Programmatic approach to register all beans in ApplicatonContext at the application bootstrap
data-neo4j Spring Data Neo4j reactive example
data-mongo Spring Data Mongo Reactive example
data-mongo-pageable Spring Data Mongo Reactive example with pagination support
data-mongo-transaction Spring Data Mongo Reactive example with Transaction support
data-redis Spring Data Redis Reactive example
data-redis-message Spring Data Redis Reactive Example with ReactiveRedisMessageListenerContainer
data-cassandra Spring Data Cassandra Reactive example
data-couchbase Spring Data Couchbase Reactive example
data-r2dbc Spring Data R2dbc Example. (Deprecated, go to hantsy/spring-r2dbc-sample to update yourself)
data-r2dbc-postgresql Spring Data R2dbc Example, but use PostgreSQL instead(Deprecated)
security Based on vanilla, add Spring Security Reactive support
security-form Same as security, login form example
security-user-properties Same as security, but use users.properties to store users
security-method Replace URI based configuration with method level constraints
security-data-mongo Based on data-mongo and security, replace with dummy users in hard codes with Mongo driven store
multipart Multipart request handling and file uploading
multipart-data-mongo Multipart and file uploading, but data in Mongo via Spring Data Mongo Reactive GridFsTemplate
mvc-thymeleaf Traditional web application, use Thymeleaf as template engine
mvc-mustache Traditional web application, use Mustache as template engine
mvc-freemarker Traditional web application, use freemarker as template engine
sse Server Send Event example
websocket WebSocket example
web-filter WebFilter example
groovy Written in groovy
groovy-dsl Groovy DSL bean definition example
client Example of WebClient to shake hands with backend reactive APIs
kotlin Written in kotlin
kotlin-routes Use kotlin functional approach to declare beans and bootstrap the application programmatically
kotlin-dsl Kotlin DSL bean definition example
session Spring Session Example
session-header Spring Session WebSessionIdResolver Example
session-data-redis Spring Data Redis based ReactiveSessionRepository Example
session-data-mongo Spring Data Mongo based ReactiveSessionRepository Example
exception-handler Exception Handler Example
integration Spring Integration Example
integration-dsl Spring Integration Java 8 DSL Example
restdocs Spring RestDocs Example

Spring Boot Samples

name description
boot-start Switch to Spring Boot to get autoconfiguration of Spring WebFlux
boot-start-routes Simple RouterFunction example
boot-jetty Example using Jetty as target runtime
boot-tomcat Example using Tomcat as target runtime
boot-undertow Example using Undertow as target runtime
boot-routes RouterFunction CRUD Example
boot-mvc-thymeleaf Same as mvc-thymeleaf, but based on Spring Boot
boot-mvc-mustache Same as mvc-mustache, but based on Spring Boot
boot-mvc-freemarker Same as mvc-freemarker, but based on Spring Boot
boot-groovy Written in Groovy
boot-kotlin Written in Kotlin
boot-kotlin-dsl Kotlin specific BeanDefinitionDSL Example
boot-redis Example of using ReactiveRedisConnection and RouterFunction
boot-data-redis Spring Data Redis Example
boot-r2dbc Spring Data R2dbc example using DatabaseClient(Deprecated)
boot-data-r2dbc Spring Data R2dbc example(Deprecated)
boot-data-r2dbc-auditing @EnableR2dbcAuditing example(Deprecated)
boot-data-r2dbc-postgresql Same as boot-data-r2dbc, but use PostgresSQL instead(Deprecated)
boot-data-r2dbc-mysql Same as boot-data-r2dbc, but use MySQL instead(Deprecated)
boot-data-r2dbc-mssql Same as boot-data-r2dbc, but use MS SQL instead(Deprecated)
boot-neo4j-rx SDN Rx Example but use ReactiveNeo4jClient(Deprecated)
boot-neo4j-rx-cypher SDN Rx Example using Cypher queries(Deprecated)
boot-data-neo4j-rx SDN Rx Example(Deprecated)
boot-data-neo4j Spring Data Neo4j example (Spring Boot 2.4)
boot-neo4j Spring Data Neo4j using ReactiveNeo4jOperations (Spring Boot 2.4)
boot-neo4j-cypher Spring Data Neo4j using ReacitveNeo4jClient (Spring Boot 2.4)
boot-data-cassandra Spring Data Cassandra Example
boot-data-couchbase Spring Data Couchbase Example
boot-data-elasticsearch Spring Data ElasticSearch Example
boot-data-mongo Spring Data Mongo Example
boot-data-mongo-auditing @EnableReactiveMongoAuditing and ReactiveAuditorAware example
boot-data-mongo-querydsl Spring Data Mongo Example with QueryDSL support
boot-data-mongo-gridfs Spring Data Mongo Example with Gridfs support
boot-exception-handler Global Exception Handler

References

Special Thanks

Specials thanks for Jetbrains's support by contributing an open-source license.

Releases

No releases published

Packages

No packages published

Languages

  • Java 88.8%
  • Kotlin 6.0%
  • Groovy 3.1%
  • Mustache 0.9%
  • HTML 0.8%
  • FreeMarker 0.4%