spring-boot/spring-boot-samples
Madhura Bhave 674f2f5a6c EndpointRequest should match @ServletEndpoint
This commit also changes the request matcher for MVC
endpoints to use an AntPathRequestMatcher instead of an
MvcRequestMatcher. The endpoint is always available
under the mapped endpoint path and this way the same matcher
can be used for both MVC and Jersey.

Fixes gh-17912

Co-authored-by: Phillip Webb <pwebb@pivotal.io>
2019-08-28 11:48:53 +05:30
..
spring-boot-sample-activemq
spring-boot-sample-actuator Merge branch '2.0.x' into 2.1.x 2019-07-24 11:41:32 +01:00
spring-boot-sample-actuator-custom-security EndpointRequest should match @ServletEndpoint 2019-08-28 11:48:53 +05:30
spring-boot-sample-actuator-log4j2
spring-boot-sample-actuator-noweb
spring-boot-sample-actuator-ui
spring-boot-sample-amqp
spring-boot-sample-animated-banner Merge '1.5.x' into 2.0.x 2019-07-24 11:39:58 +01:00
spring-boot-sample-ant
spring-boot-sample-aop
spring-boot-sample-atmosphere
spring-boot-sample-batch
spring-boot-sample-cache
spring-boot-sample-custom-layout Merge branch '2.0.x' into 2.1.x 2019-07-24 11:41:32 +01:00
spring-boot-sample-data-cassandra
spring-boot-sample-data-couchbase Merge '1.5.x' into 2.0.x 2019-07-24 11:39:58 +01:00
spring-boot-sample-data-elasticsearch
spring-boot-sample-data-jdbc Merge branch '2.0.x' into 2.1.x 2019-07-24 11:41:32 +01:00
spring-boot-sample-data-jpa
spring-boot-sample-data-ldap Merge '1.5.x' into 2.0.x 2019-07-24 11:39:58 +01:00
spring-boot-sample-data-mongodb
spring-boot-sample-data-neo4j Merge '1.5.x' into 2.0.x 2019-07-24 11:39:58 +01:00
spring-boot-sample-data-redis
spring-boot-sample-data-rest
spring-boot-sample-data-solr
spring-boot-sample-devtools
spring-boot-sample-flyway
spring-boot-sample-hateoas
spring-boot-sample-integration Merge branch '2.0.x' into 2.1.x 2019-07-24 11:41:32 +01:00
spring-boot-sample-jersey
spring-boot-sample-jetty
spring-boot-sample-jetty-jsp Fix customizer for windows tests 2019-07-24 16:11:18 -07:00
spring-boot-sample-jetty-ssl
spring-boot-sample-jooq Merge branch '2.0.x' into 2.1.x 2019-07-24 11:41:32 +01:00
spring-boot-sample-jpa
spring-boot-sample-jta-atomikos
spring-boot-sample-jta-bitronix
spring-boot-sample-jta-jndi
spring-boot-sample-junit-jupiter Merge branch '2.0.x' into 2.1.x 2019-07-24 11:41:32 +01:00
spring-boot-sample-kafka Merge branch '2.0.x' into 2.1.x 2019-07-24 11:41:32 +01:00
spring-boot-sample-liquibase
spring-boot-sample-logback
spring-boot-sample-oauth2-client Merge branch '2.0.x' into 2.1.x 2019-07-24 11:41:32 +01:00
spring-boot-sample-oauth2-resource-server Merge branch '2.0.x' into 2.1.x 2019-07-24 11:41:32 +01:00
spring-boot-sample-parent-context
spring-boot-sample-profile
spring-boot-sample-property-validation
spring-boot-sample-quartz
spring-boot-sample-reactive-oauth2-client Merge branch '2.0.x' into 2.1.x 2019-07-24 11:41:32 +01:00
spring-boot-sample-reactive-oauth2-resource-server Merge branch '2.0.x' into 2.1.x 2019-07-24 11:41:32 +01:00
spring-boot-sample-secure
spring-boot-sample-secure-jersey EndpointRequest should match @ServletEndpoint 2019-08-28 11:48:53 +05:30
spring-boot-sample-secure-webflux Merge branch '2.0.x' into 2.1.x 2019-07-24 11:41:32 +01:00
spring-boot-sample-servlet
spring-boot-sample-session Merge branch '2.0.x' into 2.1.x 2019-07-24 11:41:32 +01:00
spring-boot-sample-session-webflux Merge '1.5.x' into 2.0.x 2019-07-24 11:39:58 +01:00
spring-boot-sample-simple Merge branch '2.0.x' into 2.1.x 2019-07-24 11:41:32 +01:00
spring-boot-sample-test Merge branch '2.0.x' into 2.1.x 2019-07-24 11:41:32 +01:00
spring-boot-sample-test-nomockito Merge '1.5.x' into 2.0.x 2019-07-24 11:39:58 +01:00
spring-boot-sample-testng
spring-boot-sample-tomcat
spring-boot-sample-tomcat-jsp
spring-boot-sample-tomcat-multi-connectors
spring-boot-sample-tomcat-ssl Merge '1.5.x' into 2.0.x 2019-07-24 11:39:58 +01:00
spring-boot-sample-traditional
spring-boot-sample-undertow
spring-boot-sample-undertow-ssl
spring-boot-sample-war Merge '1.5.x' into 2.0.x 2019-07-24 11:39:58 +01:00
spring-boot-sample-web-freemarker
spring-boot-sample-web-groovy-templates
spring-boot-sample-web-jsp
spring-boot-sample-web-method-security
spring-boot-sample-web-mustache
spring-boot-sample-web-secure
spring-boot-sample-web-secure-custom
spring-boot-sample-web-secure-jdbc
spring-boot-sample-web-static
spring-boot-sample-web-ui
spring-boot-sample-webflux Merge '1.5.x' into 2.0.x 2019-07-24 11:39:58 +01:00
spring-boot-sample-webservices Merge branch '2.0.x' into 2.1.x 2019-07-24 11:41:32 +01:00
spring-boot-sample-websocket-jetty
spring-boot-sample-websocket-tomcat
spring-boot-sample-websocket-undertow
spring-boot-sample-xml
README.adoc
pom.xml EndpointRequest should match @ServletEndpoint 2019-08-28 11:48:53 +05:30

README.adoc

= Spring Boot Samples

The following sample applications are provided:

|===
| Sample | Description

| link:spring-boot-sample-activemq[spring-boot-sample-activemq]
| JMS consumer and producer using Apache ActiveMQ

| link:spring-boot-sample-actuator[spring-boot-sample-actuator]
| REST service with production-ready features

| link:spring-boot-sample-actuator-log4j2[spring-boot-sample-actuator-log4j2]
| Production-ready features using log4j 2 for logging (instead of logback)

| link:spring-boot-sample-actuator-noweb[spring-boot-sample-actuator-noweb]
| Non-web application with production-ready features

| link:spring-boot-sample-actuator-ui[spring-boot-sample-actuator-ui]
| Web UI example with production-ready features

| link:spring-boot-sample-amqp[spring-boot-sample-amqp]
| Message-oriented application using AMQP and RabbitMQ

| link:spring-boot-sample-ant[spring-boot-sample-ant]
| Executable JAR build using Ant

| link:spring-boot-sample-aop[spring-boot-sample-aop]
| Demonstrates explicit usage of Spring AOP

| link:spring-boot-sample-atmosphere[spring-boot-sample-atmosphere]
| Chat service built using Atmosphere

| link:spring-boot-sample-batch[spring-boot-sample-batch]
| Define and run a Batch job in a few lines of code

| link:spring-boot-sample-cache[spring-boot-sample-cache]
| Web application that uses Spring's cache abstraction

| link:spring-boot-sample-custom-layout[spring-boot-sample-custom-layout]
| Creates custom Jar Layout

| link:spring-boot-sample-data-cassandra[spring-boot-sample-data-cassandra]
| Stores data using Spring Data Cassandra

| link:spring-boot-sample-data-couchbase[spring-boot-sample-data-couchbase]
| Stores data using Spring Data Couchbase

| link:spring-boot-sample-data-elasticsearch[spring-boot-sample-data-elasticsearch]
| Stores data using Spring Data Elasticsearch

| link:spring-boot-sample-data-jdbc[spring-boot-sample-data-jdbc]
| Stores data using Spring Data JDBC

| link:spring-boot-sample-data-jpa[spring-boot-sample-data-jpa]
| Stores data using Spring Data JPA with Hibernate

| link:spring-boot-sample-data-ldap[spring-boot-sample-data-ldap]
| Stores data using Spring Data LDAP

| link:spring-boot-sample-data-mongodb[spring-boot-sample-data-mongodb]
| Stores data using Spring Data MongoDB

| link:spring-boot-sample-data-neo4j[spring-boot-sample-data-neo4j]
| Stores data using Spring Data Neo4j

| link:spring-boot-sample-data-redis[spring-boot-sample-data-redis]
| Stores data using Spring Data Redis

| link:spring-boot-sample-data-rest[spring-boot-sample-data-rest]
| RESTful service built using Spring Data REST

| link:spring-boot-sample-data-solr[spring-boot-sample-data-solr]
| Stores data using Spring Data Solr

| link:spring-boot-sample-devtools[spring-boot-sample-devtools]
| Using DevTools for rapid application development

| link:spring-boot-sample-flyway[spring-boot-sample-flyway]
| Database migrations with Flyway

| link:spring-boot-sample-hateoas[spring-boot-sample-hateoas]
| RESTful API built using Spring Hateoas

| link:spring-boot-sample-integration[spring-boot-sample-integration]
| Integration application built using Spring Integration and its Java DSL

| link:spring-boot-sample-jersey[spring-boot-sample-jersey]
| RESTful service built using Jersey

| link:spring-boot-sample-jetty[spring-boot-sample-jetty]
| Embedded Jetty

| link:spring-boot-sample-jetty-ssl[spring-boot-sample-jetty-ssl]
| Embedded Jetty configured to use SSL

| link:spring-boot-sample-jetty-jsp[spring-boot-sample-jetty-jsp]
| Web application that uses JSP templates with Jetty

| link:spring-boot-sample-jooq[spring-boot-sample-jooq]
| Stores data using jOOQ

| link:spring-boot-sample-jpa[spring-boot-sample-jpa]
| Uses plain JPA (Hibernate)

| link:spring-boot-sample-jta-atomikos[spring-boot-sample-jta-atomikos]
| JTA transactions with Atomikos

| link:spring-boot-sample-jta-bitronix[spring-boot-sample-jta-bitronix]
| JTA transactions with Bitronix

| link:spring-boot-sample-jta-jndi[spring-boot-sample-jta-jndi]
| JTA transactions using a `TransactionManager` and `DataSource` from JNDI

| link:spring-boot-sample-junit-jupiter[spring-boot-sample-junit-jupiter]
| Demonstrates JUnit Jupiter-based testing

| link:spring-boot-sample-kafka[spring-boot-sample-kafka]
| Consumer and producer using Apache Kafka

| link:spring-boot-sample-liquibase[spring-boot-sample-liquibase]
| Database migrations with Liquibase

| link:spring-boot-sample-logback[spring-boot-sample-logback]
| Demonstrates Spring Boot's custom Logback functionality configured in logback-spring.xml

| link:spring-boot-sample-metrics-dropwizard[spring-boot-sample-metrics-dropwizard]
| Demonstrates support for Dropwizard metrics

| link:spring-boot-sample-metrics-opentsdb[spring-boot-sample-metrics-opentsdb]
| Exports metrics to OpenTSDB

| link:spring-boot-sample-metrics-redis[spring-boot-sample-metrics-redis]
| Exports metrics to Redis

| link:spring-boot-sample-oauth2-client[spring-boot-sample-oauth2-client]
| Configure an OAuth2 login client

| link:spring-boot-sample-reactive-oauth2-client[spring-boot-sample-reactive-oauth2-client]
| Configure a Reactive OAuth2 login client

| link:spring-boot-sample-oauth2-resource-server[spring-boot-sample-oauth2-resource-server]
| Configure an OAuth2 resource server

| link:spring-boot-sample-reactive-oauth2-resource-server[spring-boot-sample-reactive-oauth2-resource-server]
| Configure a Reactive OAuth2 resource server

| link:spring-boot-sample-parent-context[spring-boot-sample-parent-context]
| Application that uses an `ApplicationContext` with a parent

| link:spring-boot-sample-profile[spring-boot-sample-profile]
| Demonstrates some of Spring Framework's `@Profile` capabilities

| link:spring-boot-sample-property-validation[spring-boot-sample-property-validation]
| Demonstrates the usage of `@ConfigurationProperties` with a Spring `Validator`

| link:spring-boot-sample-secure[spring-boot-sample-secure]
| Non-web application that uses Spring Security

| link:spring-boot-sample-servlet[spring-boot-sample-servlet]
| Web application with a "raw" `Servlet` returning plain text content

| link:spring-boot-sample-session[spring-boot-sample-session]
| Web Application that uses Spring Session to manage session data

| link:spring-boot-sample-simple[spring-boot-sample-simple]
| Simple command line application

| link:spring-boot-sample-test[spring-boot-sample-test]
| Demonstrates Spring Boot's testing capabilities

| link:spring-boot-sample-testng[spring-boot-sample-testng]
| Demonstrates TestNG-based testing

| link:spring-boot-sample-tomcat[spring-boot-sample-tomcat]
| Embedded Tomcat

| link:spring-boot-sample-tomcat-jsp[spring-boot-sample-tomcat-jsp]
| Web application that uses JSP templates with Tomcat

| link:spring-boot-sample-tomcat-multi-connectors[spring-boot-sample-tomcat-multi-connectors]
| Web application that uses Tomcat configured with multiple connectors

| link:spring-boot-sample-tomcat-ssl[spring-boot-sample-tomcat-ssl]
| Web application that uses Tomcat configured with SSL

| link:spring-boot-sample-traditional[spring-boot-sample-traditional]
| Traditional WAR packaging  (but also executable using `java -jar`)

| link:spring-boot-sample-undertow[spring-boot-sample-undertow]
| Embedded Undertow

| link:spring-boot-sample-undertow-ssl[spring-boot-sample-undertow-ssl]
| Embedded Undertow configured to use SSL

| link:spring-boot-sample-war[spring-boot-sample-war]
| Web application packaged as a war file

| link:spring-boot-sample-web-freemarker[spring-boot-sample-web-freemarker]
| Web application that uses FreeMarker templates

| link:spring-boot-sample-web-groovy-templates[spring-boot-sample-web-groovy-templates]
| Web application that uses Groovy templates

| link:spring-boot-sample-web-jsp[spring-boot-sample-web-jsp]
| Web application that uses JSP templates

| link:spring-boot-sample-web-method-security[spring-boot-sample-web-method-security]
| Web application with Security configuration enabling global method security

| link:spring-boot-sample-web-mustache[spring-boot-sample-web-mustache]
| Web application that uses Mustache views

| link:spring-boot-sample-web-secure[spring-boot-sample-web-secure]
| Web application with typical Security configuration enabling a login form

| link:spring-boot-sample-web-secure-custom[spring-boot-sample-web-secure-custom]
| Web application with custom Spring Security configuration

| link:spring-boot-sample-web-secure-jdbc[spring-boot-sample-web-secure-jdbc]
| Web application with Spring Security configured to use JDBC authentication

| link:spring-boot-sample-web-static[spring-boot-sample-web-static]
| Web application that serves static files

| link:spring-boot-sample-web-ui[spring-boot-sample-web-ui]
| Web application with a basic UI built using Bootstrap and JQuery

| link:spring-boot-sample-webservices[spring-boot-sample-webservices]
| Simple contract-first SOAP web service with Spring Web Services

| link:spring-boot-sample-websocket-jetty[spring-boot-sample-websocket-jetty]
| WebSocket application that uses Jetty

| link:spring-boot-sample-websocket-tomcat[spring-boot-sample-websocket-tomcat]
| WebSocket application that uses Tomcat

| link:spring-boot-sample-websocket-undertow[spring-boot-sample-websocket-undertow]
| WebSocket application that uses Undertow

| link:spring-boot-sample-xml[spring-boot-sample-xml]
| Example show how Spring Boot can be mixed with traditional XML configuration (we
  generally recommend using Java `@Configuration` whenever possible