36
Spring Boot. Boot up your development Sergey Morenets [email protected]

"Spring Boot. Boot up your development" Сергей Моренец

  • Upload
    fwdays

  • View
    366

  • Download
    3

Embed Size (px)

Citation preview

Page 1: "Spring Boot. Boot up your development" Сергей Моренец

Spring Boot.Boot up your development

Sergey Morenets

[email protected]

Page 2: "Spring Boot. Boot up your development" Сергей Моренец

About author

• Works in IT since 2000• 11 years of Java SE/EE experience• Java lecturer• Multiple speaker at Java User Group• Winner of 2013 Jboss Community

Recognition Award https://www.jboss.org/jbcra

Page 3: "Spring Boot. Boot up your development" Сергей Моренец

Agenda

• Overview• Spring Boot features• Setup & configuration• Q&A

Page 4: "Spring Boot. Boot up your development" Сергей Моренец

Goal

• Development environment• Launch web application• Minimum configuration

Page 5: "Spring Boot. Boot up your development" Сергей Моренец

Goal

Page 6: "Spring Boot. Boot up your development" Сергей Моренец

Spring Boot

• Stand-alone Spring applications • Embed Tomcat or Jetty directly (no need

to • deploy WAR files)• Automatically Spring configuration• Absolutely no code generation and no • requirement for XML configuration• Focus on business features and less on• infrastructure

Page 7: "Spring Boot. Boot up your development" Сергей Моренец

Spring Boot

Page 8: "Spring Boot. Boot up your development" Сергей Моренец

Spring Boot

Page 9: "Spring Boot. Boot up your development" Сергей Моренец

Servlets

Page 10: "Spring Boot. Boot up your development" Сергей Моренец

Filters

Page 11: "Spring Boot. Boot up your development" Сергей Моренец

Spring Boot plugin

Page 12: "Spring Boot. Boot up your development" Сергей Моренец

Spring Boot plugin

• spring-boot:run• spring-boot:repackage

Page 13: "Spring Boot. Boot up your development" Сергей Моренец

Dependencies

Page 14: "Spring Boot. Boot up your development" Сергей Моренец

Dependencies

Page 15: "Spring Boot. Boot up your development" Сергей Моренец

Customization

Page 16: "Spring Boot. Boot up your development" Сергей Моренец

Tomcat 7

Page 17: "Spring Boot. Boot up your development" Сергей Моренец

Jetty

Page 18: "Spring Boot. Boot up your development" Сергей Моренец

Auto-configuration

• AopAutoConfiguration• JpaRepositoriesAutoConfiguration• HibernateJpaAutoConfiguration• DataSourceAutoConfiguration• JmsTemplateAutoConfiguration• MongoAutoConfiguration• RedisAutoConfiguration• WebMvcAutoConfiguration• SecurityAutoConfiguration

Page 19: "Spring Boot. Boot up your development" Сергей Моренец

Properties

Page 20: "Spring Boot. Boot up your development" Сергей Моренец

Properties

Page 21: "Spring Boot. Boot up your development" Сергей Моренец

Properties

Class Prefix

MessageSourceAutoConfiguration spring.messages

BatchProperties spring.batch

ElasticsearchProperties spring.data.elasticsearch

FreeMarkerProperties spring.freemarker

JacksonProperties spring.jackson

DataSourceProperties spring.datasource

JerseyProperties spring.jersey

MailProperties spring.mail

MongoProperties spring.data.mongodb

SecurityProperties security

WebMvcProperties spring.mvc

Page 22: "Spring Boot. Boot up your development" Сергей Моренец

Properties

Page 23: "Spring Boot. Boot up your development" Сергей Моренец

Spring Boot Actuator

• Helps manage and monitor applications when pushed to production

• Accessible via HTTP, JMX or remote shell

Page 24: "Spring Boot. Boot up your development" Сергей Моренец

Spring Boot Actuator

• Series of endpoints to help manage your Spring application• Reads properties and spring beans and then returns a JSON view• Allows direct access to non functional

application information without having to open an IDE or a command prompt

Page 25: "Spring Boot. Boot up your development" Сергей Моренец

Spring Boot Actuator

Page 26: "Spring Boot. Boot up your development" Сергей Моренец

Spring Boot Actuator

• /info• /health• /beans• /env• /dump• /metrics• /trace• /autoconfigurationreport• /shutdown

Page 27: "Spring Boot. Boot up your development" Сергей Моренец

Spring Boot Actuator. Health

Page 28: "Spring Boot. Boot up your development" Сергей Моренец

Spring Boot Actuator. Health

Page 29: "Spring Boot. Boot up your development" Сергей Моренец

Spring Boot Actuator.Metrics

• Includes a metrics service with ‘gauge’ and ‘counter’ support

• A ‘gauge’ records a single value; and a ‘counter’ records a delta (an increment or decrement)

• Metrics for all HTTP requests are automatically recorded

Page 30: "Spring Boot. Boot up your development" Сергей Моренец

Spring Boot Actuator.Metrics

• System metrics• Datasource metrics• WebServer metrics• Custom metrics

Page 31: "Spring Boot. Boot up your development" Сергей Моренец

Spring Boot Actuator. Metrics

Page 32: "Spring Boot. Boot up your development" Сергей Моренец

Spring Boot Actuator. Custom metrics

Page 33: "Spring Boot. Boot up your development" Сергей Моренец

Spring Boot Actuator. Metrics

Page 34: "Spring Boot. Boot up your development" Сергей Моренец

Pro

• No configuration files• Auto-configuration• Maven, Gradle & Ant integration• Tomcat, Jetty and Undertow built-in

support• Configuration for multiple Java

technologies• Monitoring & management out-of-box

Page 35: "Spring Boot. Boot up your development" Сергей Моренец

Cons

• Based on Spring Framework• Additional configuration for web servers

Page 36: "Spring Boot. Boot up your development" Сергей Моренец

Q&A