I can say that I am launching a large (800,000+ lines of code) application using soothing web services through Spring MVC, JMS, Atomikos, Hibernate, JMX and built-in Tomcat transactions. This will launch the application on my local desktop in about 19 seconds.
Spring Boot tries not to configure modules that you are not using. However, it is easy to introduce additional dependencies and configuration that you did not plan.
Remember that Spring Boot follows the concept of configuration over configuration and simply placing the library in your class path may cause Spring Boot to try to configure the module to use the library. Also, by doing something as simple as annotating your class with @RestController, you run Spring Boot to automatically configure the entire Spring MVC stack.
You can see what is happening under the covers, and turning on debug logging is as easy as specifying --debug when starting the application from the command line. You can also specify debug = true in your application.properties.
Alternatively, you can set the logging level in application.properties as simple as:
logging.level.org.springframework.web: DEBUG logging.level.org.hibernate: ERROR
If you find a module with automatic configuration that you do not need, you can disable it. Documents for this can be found here: http://docs.spring.io/spring-boot/docs/current-SNAPSHOT/reference/htmlsingle/#using-boot-disabling-specific-auto-configuration
An example would look like this:
@Configuration @EnableAutoConfiguration(exclude={DataSourceAutoConfiguration.class}) public class MyConfiguration { }
pczeus Mar 01 '16 at 3:01 2016-03-01 03:01
source share