Skip to content

Spring Boot 1.2 Release Notes

philwebb edited this page Sep 4, 2014 · 12 revisions

Spring Boot 1.2 Release Notes (M1)

Upgrading from Spring Boot 1.1

Mongo and MongoDbFactory Beans

The MongoAutoConfiguration class will no longer register a Mongo bean if you define your own MongoDbFactory bean. Ensure that you either register a Monog bean whenever you declare your own MongoDbFactory bean, or that you only use the MongoDbFactory interface to access Mongo databases.

Renamed VanillaHealthIndicator class

The VanillaHealthIndicator class has been renamed to ApplicationHealthIndicator. Most users will not interact with the class directly, however, if you previously imported org.springframework.boot.actuate.health.VanillaHealthIndicator in your code you will need to change to org.springframework.boot.actuate.health.ApplicationHealthIndicator.

Hibernate

The SpringNamingStrategy class has been moved to the org.springframework.boot.orm.jpa package. The old org.springframework.boot.orm.SpringNamingStrategy remains but is deprecated and will be removed in a future release.

Version Updates

Spring Boot 1.2 builds on and requires Spring Framework 4.1. Several 3rd party dependencies have been upgraded with this release including Jackson and Joda Time.

New and Noteworthy

JTA Support

Spring Boot 1.2 now supports distributed JTA transactions across multiple XA resources using either an Atomkos or Bitronix embedded transaction manager. JTA transactions are also supported when deploying to a suitable Java EE Application Server.

When a JTA environment is detected, Spring’s JtaTransactionManager will be used to manage transactions. Auto-configured JMS, DataSource and JPA beans will be upgraded to support XA transactions. You can use standard Spring idioms such as @Transactional to participate in a distributed transaction.

Additionally, general support classes are provided to make Atomkos and Bitronix easier to configure, even if you are not using @EnableAutoConfiguration. See the JTA section of the reference manual for details.

JNDI Lookups

If you are using a full Java EE Application Server you can now lookup both DataSource and JMS ConnectionFactory beans from JNDI. Use the spring.datasource.jndi-name and spring.jms.jndi-name properties in your application.properties or application.yml file.

Banner Interface

A new Banner interface has been added which can be used in combination with SpringApplication.setBanner(…​) to provide customized banner output. The use of src/main/resources/banner.txt is still recommended for simple banners, however, the new interface is useful if you need to do something fancy.

JMS Support

Auto-configuration is now provided for Spring Framework 4.1’s @JmsListener annotation. The @EnableJms annotation is also auto-configured whenever you have spring-jms.jar on your classpath.

Spring Cloud Support

Auto-configuration has been added for spring-cloud and a new spring-boot-starter-cloud POM has also been included with this release. Auto-configuration provides the equivalent functionality to the @CloudScan annotation.

CLI Updates

Install/Uninstall @Cachable

Other

Composite Any Condition GSON RedisProperties database Maven plugin repackage task can be disabled RelaxedDataBinder alais @ConditionalOnBean support for types using String

JCache

spring.datasource.validation-query for DataSourceHealthIndicator

Regex in keystosanitize

AnsiOutput configured in Env

PublicMetrics DataSource Metrics

Declarative SSL with Jetty and Tomcat

@ConditionalOnProperty

  • Consistent json for HealthIndicators

  • Gson Support

  • JNDI Support

  • XA

Clone this wiki locally