Back

TechnologyNov 10, 2011

SpringOne 2GX 2011 Summary

Credera Team

SpringOne was in Chicago this year and full of valuable information related to Spring on general direction of Web Application development.  Below is a high-level summary of the sessions I attended and information I came away with.

Spring 3.0

  • Annotated component model (stereotypes, factory methods, JSR-330 support)

  • Spring Expression Language

  • REST Support

  • Porlet 2.0 Support

  • Model validation

  • Java EE 6 / JPA 2.0 support

Spring 3.1

  • Environment profiles

  • Test Context Framework

  • “c:” namespace for XML configuration

  • Caching (abstraction and declarative using @Cacheable / @CacheEvict)

  • Servlet 3.0 support

  • Flash Attributes (attributes that live across redirects)

  • JPA enhancements (potentially eliminate persistence.xml)

  • Support for Hibernate 4.0 / Quartz 2.0

  • Java SE 7 support

  • Redirect enhancements that allow you to dynamically create the redirect URL by passing in parameters (e.g. PathVariable for incoming requests)

  • “IgnoreDefaultModelOnRedirect” configuration prevents you from inadvertently appending your model as a query string on redirects

__Spring 3.2

__

  • Java EE 7

  • Move to Gradle to build the framework

  • Build using Java SE 7

Spring Tooling (STS)

As a former Eclipse plugin developer, I’m a hold-out of using a product based on Eclipse as my primary IDE.  With some of the features and integrations included in STS 2.8 I’m impressed with the built-in support and am considering moving to it.

  • Spring 3.1 support

  • Gradle tools

  • Cloud Foundry Integration

  • Spring / Scala / Grails

  • Java 7

  • Agent-based reloading (better than Hotspot reloading)

Spring Data JPA

This framework greatly simplifies the use of JPA in Spring applications.  Essentially it wraps the existing JPA support in Spring with an API supporting Pagination, Auditing and QueryDSL predicates to support type-safe JPA queries.

My only reservation here is that up to this point my applications are not tied to Spring from the service layer back, and now they would.  Given some of the examples I saw presented I will consider this for future projects.

Tomcat 7

  • Asynchronous servlets

  • Annotations (xml-free config)

  • Web fragments (libraries contain web.xml snippets)

  • Session Management

  • Performance (e.g. session ID generation bottleneck removed, jdbc-pool)

  • Parallel Deployment (existing sessions go to the original app, new sessions go to the new app)

  • Security (e.g. Cross-site request forgery (CSRF) protection filter)

Well, that’s all for now.  I look forward to diving into some of these topics in future posts.

Spring 3.0:

–    Annotated component model (stereotypes, factory methods, JSR-330 support)

–    Spring Expression Language

–    REST Support

–    Porlet 2.0 Support

–    Model validation

–    Java EE 6 / JPA 2.0 support

Spring 3.1

–    Environment profiles

–    Test Context Framework

–    “c:” namespace for XML configuration

–    Caching (abstraction and declarative using @Cacheable / @CacheEvict)

–    Servlet 3.0 support

–    Flash Attributes (attributes that live across redirects)

–    JPA enhancements (potentially eliminate persistence.xml)

–    Support for Hibernate 4.0 / Quartz 2.0

–    Java SE 7 support

Spring 3.2

–    Java EE 7

–    Move to Gradle to build the framework

–    Build using Java SE 7