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/README.adoc

279 lines
11 KiB
Plaintext

= 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-hibernate4[spring-boot-sample-hibernate52]
| Demonstrates how to use Hibernate 5.2
| 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-jetty-jsp[spring-boot-sample-jetty-jsp]
| Web application that uses JSP templates with Jetty
| 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-jetty92[spring-boot-sample-jetty92]
| Embedded Jetty 9.2
| 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
| 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-tomcat7-ssl[spring-boot-sample-tomcat7-ssl]
| Web application that uses Tomcat 7 configured with SSL
| link:spring-boot-sample-tomcat80-ssl[spring-boot-sample-tomcat80-ssl]
| Web application that uses Tomcat 8.0 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-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