Starters with Maven

In the preceding section, we looked at the Spring Initializr tool. It is time to quickly look at the starters or dependencies supported by Spring Boot.

Dependency management becomes challenging as the project grows in complexity. It is recommended not to manage the dependencies manually for a complex project. Spring Boot starters fix a similar problem. Spring Boot starters is a set of dependency descriptors that can be included in Spring-powered applications using starter POMs. It eliminates the need to look for sample code and copy/paste lots of dependency descriptors for Spring and related libraries. As an example, if we want to develop an application using Spring and JPA, we can include the spring-boot-data-jpa-starter dependency in the project. spring-boot-data-jpa-starter is one of the starters. The starters follow uniform naming patterns, such as spring-boot-starter-*, where * denotes the type of application.

Here is a list of some Spring Boot application starters:

Name Description
spring-boot-starter Core starter provides auto-configuration and logging support.
spring-boot-starter-activemq JMS messaging starter using Apache ActiveMQ.
spring-boot-starter-amqp Spring AMQP and Rabbit MQ starter.
spring-boot-starter-aop Spring AOP and AspectJ starter.
spring-boot-starter-artemis JMS messaging starter using Apache Artemis.
spring-boot-starter-batch Spring Batch starter.
spring-boot-starter-cache Spring Framework's caching support.
spring-boot-starter-cloud-connectors Starter providing support for simplified connections with cloud services using Spring Cloud Connectors in cloud platforms such as Cloud Foundry and Heroku.
spring-boot-starter-data-elasticsearch Starter with support for elasticsearch and analytics engine, and Spring Data Elasticsearch.
spring-boot-starter-data-jpa Spring Data JPA with Hibernate.
spring-boot-starter-data-ldap Spring Data LDAP.
spring-boot-starter-data-mongodb MongoDB document-oriented database and Spring Data MongoDB.
spring-boot-starter-data-redis Redis key-value data store with Spring Data Redis and the Lettuce client.
spring-boot-starter-data-rest Starter providing support for exposing Spring Data repositories over REST using Spring Data REST.
spring-boot-starter-data-solr Apache Solr search platform with Spring Data Solr.
spring-boot-starter-freemarker Starter supports building MVC web applications using the FreeMarker views.
spring-boot-starter-groovy-templates Starter supporting building MVC web applications using the Groovy templates views.
spring-boot-starter-integration Spring Integration.
spring-boot-starter-jdbc JDBC with the Tomcat JDBC connection pool.
spring-boot-starter-jersey Starter supporting building RESTful web applications using JAX-RS and Jersey. It is an alternative to spring-boot-starter-web starter.
spring-boot-starter-json Starter supporting JSON manipulation.
spring-boot-starter-mail Starter supporting the use of Java Mail and Spring Framework’s email-sending support.
spring-boot-starter-quartz Starter for using Spring Boot Quartz.
spring-boot-starter-security Spring Security starter.
spring-boot-starter-test Support for Spring Boot applications with libraries including JUnit, Hamcrest, and Mockito.
spring-boot-starter-thymeleaf Supports building MVC web applications using the Thymeleaf views.
spring-boot-starter-validation Starter supporting Java Bean Validation with Hibernate Validator.
spring-boot-starter-web Supports building web, including RESTful, applications using Spring MVC. It uses Tomcat as the default embedded container.
spring-boot-starter-web-services Supports use of Spring Web Services.
spring-boot-starter-websocket Supports building WebSocket applications using Spring Framework's WebSocket support.

 

spring-boot-starter-actuator is a production starter for Spring Boot's Actuator tool, which provides support for production-ready features, such as application monitoring, health checks, logging, and beans.

The following list includes a few of the technical starters for Spring Boot:

Name Description
spring-boot-starter-jetty                         Support for Jetty as the embedded servlet container. This is an alternative to spring-boot-starter-tomcat.
spring-boot-starter-log4j2                          Starter supporting Log4j 2 for logging. This is an alternative to spring-boot-starter-logging.
spring-boot-starter-logging This is the default logging starter using logback.
spring-boot-starter-tomcat This is the default servlet container starter used for spring-boot-starter-web. It uses Tomcat as the embedded server.
spring-boot-starter-undertow This is an alternative to spring-boot-starter-tomcat starter. It uses Undertow as the embedded server.
spring-boot-starter-cache Spring Framework's caching support.
..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset