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 ed2460b091 Add support for animated GIFs
Update ImageBanner to support animated GIFs. Animations rely on ANSI
cursor codes so don't work so well in an IDE. They do, however, work
when running the app from a terminal.

See also commit 47bc5e71ab

Closes gh-11118
7 years ago
..
spring-boot-sample-activemq Polish 7 years ago
spring-boot-sample-actuator Property detect Health web extension with management context 7 years ago
spring-boot-sample-actuator-custom-security Polish 7 years ago
spring-boot-sample-actuator-log4j2 Make default username and password configurable 7 years ago
spring-boot-sample-actuator-noweb Fix sample POMs 7 years ago
spring-boot-sample-actuator-ui Polish 7 years ago
spring-boot-sample-amqp Fix sample POMs 7 years ago
spring-boot-sample-animated-banner Add support for animated GIFs 7 years ago
spring-boot-sample-ant Fix Ant builds following Maven updates 7 years ago
spring-boot-sample-aop Fix sample POMs 7 years ago
spring-boot-sample-atmosphere Polish 7 years ago
spring-boot-sample-batch Polish 7 years ago
spring-boot-sample-cache Polish "Fix references to management related properties" 7 years ago
spring-boot-sample-custom-layout Update custom layout sample so it builds with Java 9 7 years ago
spring-boot-sample-data-cassandra Polish 7 years ago
spring-boot-sample-data-couchbase Polish 7 years ago
spring-boot-sample-data-elasticsearch Polish 7 years ago
spring-boot-sample-data-jpa Remove explicit constructor super() calls 7 years ago
spring-boot-sample-data-ldap Polish 7 years ago
spring-boot-sample-data-mongodb Polish 7 years ago
spring-boot-sample-data-neo4j Polish 7 years ago
spring-boot-sample-data-redis Polish 7 years ago
spring-boot-sample-data-rest Remove explicit constructor super() calls 7 years ago
spring-boot-sample-data-solr Remove explicit constructor super() calls 7 years ago
spring-boot-sample-devtools Polish 7 years ago
spring-boot-sample-flyway Polish 7 years ago
spring-boot-sample-hateoas Polish 7 years ago
spring-boot-sample-integration Polish 7 years ago
spring-boot-sample-jersey Move `/application` to `/actuator` 7 years ago
spring-boot-sample-jersey1 Fix sample POMs 7 years ago
spring-boot-sample-jetty Polish 7 years ago
spring-boot-sample-jetty-jsp Polish 7 years ago
spring-boot-sample-jetty-ssl Polish 7 years ago
spring-boot-sample-jooq Polish 7 years ago
spring-boot-sample-jpa Remove Web depedency from Freemarker starter 7 years ago
spring-boot-sample-jta-atomikos Remove "final" keywords 7 years ago
spring-boot-sample-jta-bitronix Polish 7 years ago
spring-boot-sample-jta-jndi Log warning when open-in-view is implicitly enabled for JPA or Neo4j 7 years ago
spring-boot-sample-jta-narayana Remove "final" keywords 7 years ago
spring-boot-sample-junit-jupiter Fix sample POMs 7 years ago
spring-boot-sample-liquibase Polish "Fix references to management related properties" 7 years ago
spring-boot-sample-logback Delete sample Gradle builds 7 years ago
spring-boot-sample-oauth2-client Polish 7 years ago
spring-boot-sample-parent-context Polish 7 years ago
spring-boot-sample-profile Delete sample Gradle builds 7 years ago
spring-boot-sample-property-validation Polish 7 years ago
spring-boot-sample-quartz Fix sample POMs 7 years ago
spring-boot-sample-secure Polish 7 years ago
spring-boot-sample-secure-webflux Make default username and password configurable 7 years ago
spring-boot-sample-servlet Polish 7 years ago
spring-boot-sample-session Make default username and password configurable 7 years ago
spring-boot-sample-session-webflux Make default username and password configurable 7 years ago
spring-boot-sample-simple Polish 7 years ago
spring-boot-sample-test Polish 7 years ago
spring-boot-sample-test-nomockito Fix sample POMs 7 years ago
spring-boot-sample-testng Polish 7 years ago
spring-boot-sample-tomcat Polish 7 years ago
spring-boot-sample-tomcat-jsp Polish 7 years ago
spring-boot-sample-tomcat-multi-connectors Polish 7 years ago
spring-boot-sample-tomcat-ssl Polish 7 years ago
spring-boot-sample-traditional Polish 7 years ago
spring-boot-sample-undertow Polish 7 years ago
spring-boot-sample-undertow-ssl Polish "Samples cleanup" 7 years ago
spring-boot-sample-war Fix sample POMs 7 years ago
spring-boot-sample-web-freemarker Polish 7 years ago
spring-boot-sample-web-groovy-templates Polish 7 years ago
spring-boot-sample-web-jsp Polish 7 years ago
spring-boot-sample-web-method-security Polish 7 years ago
spring-boot-sample-web-mustache Polish 7 years ago
spring-boot-sample-web-secure Polish 7 years ago
spring-boot-sample-web-secure-custom Polish 7 years ago
spring-boot-sample-web-secure-jdbc Polish 7 years ago
spring-boot-sample-web-static Polish 7 years ago
spring-boot-sample-web-ui Polish 7 years ago
spring-boot-sample-webflux Move `/application` to `/actuator` 7 years ago
spring-boot-sample-webservices Fix sample POMs 7 years ago
spring-boot-sample-websocket-jetty Polish 7 years ago
spring-boot-sample-websocket-tomcat Polish 7 years ago
spring-boot-sample-websocket-undertow Polish 7 years ago
spring-boot-sample-xml Fix sample POMs 7 years ago
README.adoc Remove Spring Security OAuth Auto-Configuration 7 years ago
pom.xml Add support for animated GIFs 7 years ago

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

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

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