diff --git a/spring-boot-project/spring-boot-docs/src/docs/asciidoc/spring-boot-features.adoc b/spring-boot-project/spring-boot-docs/src/docs/asciidoc/spring-boot-features.adoc index dd1fc99cd780..71036444ca4f 100644 --- a/spring-boot-project/spring-boot-docs/src/docs/asciidoc/spring-boot-features.adoc +++ b/spring-boot-project/spring-boot-docs/src/docs/asciidoc/spring-boot-features.adoc @@ -6948,7 +6948,7 @@ You can use the `@DataJpaTest` annotation to test JPA applications. By default, it scans for `@Entity` classes and configures Spring Data JPA repositories. If an embedded database is available on the classpath, it configures one as well. SQL queries are logged by default by setting the `spring.jpa.show-sql` property to `true`. -This can be disabled using the `showSql()` attribute of the annotation. +This can be disabled by using the `showSql()` attribute of the annotation. Regular `@Component` and `@ConfigurationProperties` beans are not scanned when the `@DataJpaTest` annotation is used. `@EnableConfigurationProperties` can be used to include `@ConfigurationProperties` beans. diff --git a/spring-boot-project/spring-boot-test-autoconfigure/src/main/java/org/springframework/boot/test/autoconfigure/orm/jpa/DataJpaTest.java b/spring-boot-project/spring-boot-test-autoconfigure/src/main/java/org/springframework/boot/test/autoconfigure/orm/jpa/DataJpaTest.java index 26de93fdb150..fabffc964c33 100644 --- a/spring-boot-project/spring-boot-test-autoconfigure/src/main/java/org/springframework/boot/test/autoconfigure/orm/jpa/DataJpaTest.java +++ b/spring-boot-project/spring-boot-test-autoconfigure/src/main/java/org/springframework/boot/test/autoconfigure/orm/jpa/DataJpaTest.java @@ -54,8 +54,8 @@ * override these settings. *

* SQL queries are logged by default by setting the {@code spring.jpa.show-sql} property - * to {@code true}. This can be disabled using the {@link DataJpaTest#showSql() showSql} - * attribute. + * to {@code true}. This can be disabled by using the {@link DataJpaTest#showSql() + * showSql} attribute. *

* If you are looking to load your full application configuration, but use an embedded * database, you should consider {@link SpringBootTest @SpringBootTest} combined with diff --git a/spring-boot-project/spring-boot/src/main/java/org/springframework/boot/availability/ApplicationAvailabilityBean.java b/spring-boot-project/spring-boot/src/main/java/org/springframework/boot/availability/ApplicationAvailabilityBean.java index cac11b347d2b..f565d61f637d 100644 --- a/spring-boot-project/spring-boot/src/main/java/org/springframework/boot/availability/ApplicationAvailabilityBean.java +++ b/spring-boot-project/spring-boot/src/main/java/org/springframework/boot/availability/ApplicationAvailabilityBean.java @@ -38,7 +38,7 @@ public class ApplicationAvailabilityBean implements ApplicationAvailability, ApplicationListener> { - private static final Log logger = LogFactory.getLog(ApplicationAvailability.class); + private static final Log logger = LogFactory.getLog(ApplicationAvailabilityBean.class); private final Map, AvailabilityChangeEvent> events = new HashMap<>(); @@ -70,6 +70,13 @@ public void onApplicationEvent(AvailabilityChangeEvent event) { } private void logStateChange(AvailabilityChangeEvent event) { + if (logger.isInfoEnabled()) { + StringBuilder message = createStateChangeMessage(event); + logger.info(message); + } + } + + private StringBuilder createStateChangeMessage(AvailabilityChangeEvent event) { Class stateType = getStateType(event.getState()); StringBuilder message = new StringBuilder( "Application availability state " + stateType.getSimpleName() + " changed"); @@ -78,15 +85,16 @@ private void logStateChange(AvailabilityChangeEvent event) { message.append(" from " + lastChangeEvent.getState()); } message.append(" to " + event.getState()); - if (event.getSource() != null) { - if (event.getSource() instanceof Throwable) { - message.append(": " + event.getSource()); + Object source = event.getSource(); + if (source != null) { + if (source instanceof Throwable) { + message.append(": " + source); } - else if (!(event.getSource() instanceof ApplicationEventPublisher)) { - message.append(": " + event.getSource().getClass().getName()); + else if (!(source instanceof ApplicationEventPublisher)) { + message.append(": " + source.getClass().getName()); } } - logger.info(message); + return message; } @SuppressWarnings("unchecked") diff --git a/spring-boot-project/spring-boot/src/main/java/org/springframework/boot/convert/ApplicationConversionService.java b/spring-boot-project/spring-boot/src/main/java/org/springframework/boot/convert/ApplicationConversionService.java index 44329112b53b..06f49fe4daac 100644 --- a/spring-boot-project/spring-boot/src/main/java/org/springframework/boot/convert/ApplicationConversionService.java +++ b/spring-boot-project/spring-boot/src/main/java/org/springframework/boot/convert/ApplicationConversionService.java @@ -55,7 +55,7 @@ public class ApplicationConversionService extends FormattingConversionService { private static volatile ApplicationConversionService sharedInstance; - private boolean unmodifiable; + private final boolean unmodifiable; public ApplicationConversionService() { this(null); diff --git a/spring-boot-project/spring-boot/src/test/java/org/springframework/boot/web/embedded/jetty/Jetty10ReactiveWebServerFactoryTests.java b/spring-boot-project/spring-boot/src/test/java/org/springframework/boot/web/embedded/jetty/Jetty10ReactiveWebServerFactoryTests.java index c1820a3fc74e..db8cee18ffb4 100644 --- a/spring-boot-project/spring-boot/src/test/java/org/springframework/boot/web/embedded/jetty/Jetty10ReactiveWebServerFactoryTests.java +++ b/spring-boot-project/spring-boot/src/test/java/org/springframework/boot/web/embedded/jetty/Jetty10ReactiveWebServerFactoryTests.java @@ -23,7 +23,7 @@ import static org.assertj.core.api.Assertions.assertThat; /** - * Tests for {@JettyReactiveWebServerFactory} with Jetty 10. + * Tests for {@link JettyReactiveWebServerFactory} with Jetty 10. * * @author Andy Wilkinson */ diff --git a/spring-boot-project/spring-boot/src/test/java/org/springframework/boot/web/embedded/jetty/Jetty10ServletWebServerFactoryTests.java b/spring-boot-project/spring-boot/src/test/java/org/springframework/boot/web/embedded/jetty/Jetty10ServletWebServerFactoryTests.java index acf6f6ec150c..404200c96708 100644 --- a/spring-boot-project/spring-boot/src/test/java/org/springframework/boot/web/embedded/jetty/Jetty10ServletWebServerFactoryTests.java +++ b/spring-boot-project/spring-boot/src/test/java/org/springframework/boot/web/embedded/jetty/Jetty10ServletWebServerFactoryTests.java @@ -23,7 +23,7 @@ import static org.assertj.core.api.Assertions.assertThat; /** - * Tests for {@JettyServletWebServerFactory} with Jetty 10. + * Tests for {@link JettyServletWebServerFactory} with Jetty 10. * * @author Andy Wilkinson */