You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
spring-boot/spring-boot-samples
Phillip Webb bcfa2e6676 Make TestRestTemplate not extend RestTemplate
Update TestRestTemplate so that it no longer directly extends
RestTemplate. Prior to this commit it was possible that TestRestTemplate
could interfere with user defined RestTemplate beans.

TestRestTemplate offers the same methods as RestTemplate so should be
a drop-in replacement. If access is needed to the actual underlying
template the `getRestTemplate()` method should be used.

Fixes gh-5915
9 years ago
..
spring-boot-sample-activemq
spring-boot-sample-actuator Make use of new GetMapping and PostMapping annotations 9 years ago
spring-boot-sample-actuator-log4j2 Make use of new GetMapping and PostMapping annotations 9 years ago
spring-boot-sample-actuator-noweb
spring-boot-sample-actuator-ui Make use of new GetMapping and PostMapping annotations 9 years ago
spring-boot-sample-amqp
spring-boot-sample-ant
spring-boot-sample-aop
spring-boot-sample-atmosphere Move to relocated web classes 9 years ago
spring-boot-sample-batch
spring-boot-sample-cache Upgrade to EhCache 3.0.1 9 years ago
spring-boot-sample-data-cassandra
spring-boot-sample-data-couchbase
spring-boot-sample-data-elasticsearch Polish 9 years ago
spring-boot-sample-data-gemfire
spring-boot-sample-data-jpa Make use of new GetMapping and PostMapping annotations 9 years ago
spring-boot-sample-data-mongodb
spring-boot-sample-data-neo4j
spring-boot-sample-data-redis
spring-boot-sample-data-rest Avoid exception from dropping non-existent constraint in Data REST sample 9 years ago
spring-boot-sample-data-solr
spring-boot-sample-devtools Make use of new GetMapping and PostMapping annotations 9 years ago
spring-boot-sample-flyway
spring-boot-sample-hateoas Make use of new GetMapping and PostMapping annotations 9 years ago
spring-boot-sample-hibernate4 Polish 9 years ago
spring-boot-sample-hornetq
spring-boot-sample-hypermedia Move @LocalServerPort annotation 9 years ago
spring-boot-sample-hypermedia-gson
spring-boot-sample-hypermedia-jpa
spring-boot-sample-hypermedia-ui Move @LocalServerPort annotation 9 years ago
spring-boot-sample-integration Add JMX support to the Spring Integration starter 9 years ago
spring-boot-sample-jersey Make TestRestTemplate not extend RestTemplate 9 years ago
spring-boot-sample-jersey1 Move to relocated web classes 9 years ago
spring-boot-sample-jetty Make TestRestTemplate not extend RestTemplate 9 years ago
spring-boot-sample-jetty-ssl Make TestRestTemplate not extend RestTemplate 9 years ago
spring-boot-sample-jetty8 Make TestRestTemplate not extend RestTemplate 9 years ago
spring-boot-sample-jetty8-ssl Make TestRestTemplate not extend RestTemplate 9 years ago
spring-boot-sample-jetty93 Make TestRestTemplate not extend RestTemplate 9 years ago
spring-boot-sample-jooq
spring-boot-sample-jpa Align Hibernate 5 join table names with those from SpringNamingStrategy 9 years ago
spring-boot-sample-jta-atomikos
spring-boot-sample-jta-bitronix
spring-boot-sample-jta-jndi Make use of new GetMapping and PostMapping annotations 9 years ago
spring-boot-sample-jta-narayana
spring-boot-sample-liquibase
spring-boot-sample-logback
spring-boot-sample-metrics-dropwizard Make use of new GetMapping and PostMapping annotations 9 years ago
spring-boot-sample-metrics-opentsdb Make use of new GetMapping and PostMapping annotations 9 years ago
spring-boot-sample-metrics-redis Make use of new GetMapping and PostMapping annotations 9 years ago
spring-boot-sample-parent-context Add JMX support to the Spring Integration starter 9 years ago
spring-boot-sample-profile
spring-boot-sample-property-validation
spring-boot-sample-secure
spring-boot-sample-secure-oauth2 Make use of new GetMapping and PostMapping annotations 9 years ago
spring-boot-sample-secure-oauth2-resource
spring-boot-sample-servlet Move to relocated web classes 9 years ago
spring-boot-sample-session-redis Make use of new GetMapping and PostMapping annotations 9 years ago
spring-boot-sample-simple
spring-boot-sample-test Remove accidentally comitted SampleTest 9 years ago
spring-boot-sample-testng Make use of new GetMapping and PostMapping annotations 9 years ago
spring-boot-sample-tomcat Make TestRestTemplate not extend RestTemplate 9 years ago
spring-boot-sample-tomcat-jsp Make use of new GetMapping and PostMapping annotations 9 years ago
spring-boot-sample-tomcat-multi-connectors Make use of new GetMapping and PostMapping annotations 9 years ago
spring-boot-sample-tomcat-ssl Make TestRestTemplate not extend RestTemplate 9 years ago
spring-boot-sample-tomcat7-jsp Make use of new GetMapping and PostMapping annotations 9 years ago
spring-boot-sample-traditional Move @LocalServerPort annotation 9 years ago
spring-boot-sample-undertow Make TestRestTemplate not extend RestTemplate 9 years ago
spring-boot-sample-undertow-ssl Make TestRestTemplate not extend RestTemplate 9 years ago
spring-boot-sample-velocity
spring-boot-sample-war Make use of new GetMapping and PostMapping annotations 9 years ago
spring-boot-sample-web-freemarker Make use of new GetMapping and PostMapping annotations 9 years ago
spring-boot-sample-web-groovy-templates Make use of new GetMapping and PostMapping annotations 9 years ago
spring-boot-sample-web-jsp Make use of new GetMapping and PostMapping annotations 9 years ago
spring-boot-sample-web-method-security Make use of new GetMapping and PostMapping annotations 9 years ago
spring-boot-sample-web-mustache Make use of new GetMapping and PostMapping annotations 9 years ago
spring-boot-sample-web-secure Make use of new GetMapping and PostMapping annotations 9 years ago
spring-boot-sample-web-secure-custom Make use of new GetMapping and PostMapping annotations 9 years ago
spring-boot-sample-web-secure-github Move @LocalServerPort annotation 9 years ago
spring-boot-sample-web-secure-jdbc Make use of new GetMapping and PostMapping annotations 9 years ago
spring-boot-sample-web-static Don’t expect a charset attribute on a text/css Content-Type 9 years ago
spring-boot-sample-web-ui Make use of new GetMapping and PostMapping annotations 9 years ago
spring-boot-sample-web-velocity Make use of new GetMapping and PostMapping annotations 9 years ago
spring-boot-sample-webservices Move @LocalServerPort annotation 9 years ago
spring-boot-sample-websocket-jetty Move to relocated web classes 9 years ago
spring-boot-sample-websocket-tomcat Move to relocated web classes 9 years ago
spring-boot-sample-websocket-undertow Move to relocated web classes 9 years ago
spring-boot-sample-xml
README.adoc
pom.xml

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-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-gemfire[spring-boot-sample-data-gemfire]
| Stores data using Spring Data GemFire

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

| 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-hibernate4[spring-boot-sample-hibernate4]
| Demonstrates how to use Hibernate 4

| link:spring-boot-sample-hornetq[spring-boot-sample-hornetq]
| Message-oriented application using HornetQ

| link:spring-boot-sample-hypermedia[spring-boot-sample-hypermedia]
| Demonstrates Actuator's hypermedia support, including HAL Browser

| link:spring-boot-sample-hypermedia-gson[spring-boot-sample-hypermedia-gson]
| Demonstrates Actuator's hypermedia support using GSON in place of Jackson

| link:spring-boot-sample-hypermedia-jpa[spring-boot-sample-hypermedia-jpa]
| Demonstrates Actuator's hypermedia support alongside Spring Data JPA and Spring Data
  REST

| link:spring-boot-sample-hypermedia-ui[spring-boot-sample-hypermedia-ui]
| Demonstrates Actuator's hypermedia support alongside a static web UI

| 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 2

| link:spring-boot-sample-jersey1[spring-boot-sample-jersey1]
| 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-jetty8[spring-boot-sample-jetty8]
| Embedded Jetty 8

| link:spring-boot-sample-jetty8-ssl[spring-boot-sample-jetty8-ssl]
| Embedded Jetty 8 SSL

| link:spring-boot-sample-jetty93[spring-boot-sample-jetty93]
| Embedded Jetty 9.3

| 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-jta-narayana[spring-boot-sample-jta-narayana]
| JTA transactions with Narayana

| 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-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-secure-oauth2[spring-boot-sample-secure-oauth2]
| RESTful service secured using OAuth2

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

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

| link:spring-boot-sample-session-redis[spring-boot-sample-session-redis]
| Web Application that uses Spring Session to store session data in Redis

| 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 8

| 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-tomcat7-jsp[spring-boot-sample-tomcat7-jsp]
| Web application that uses JSP templates with Tomcat 7

| 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-velocity[spring-boot-sample-velocity]
| Non-web application that uses Velocity templates

| 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-github[spring-boot-sample-web-secure-github]
| Web application with Spring Security configured to authenticate with GitHub using OAuth2

| 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-web-velocity[spring-boot-sample-web-velocity]
| Web application that uses Velocity templates

| 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