= 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