Spring 4 en spring data

Post on 28-Aug-2014

252 Views

Category:

Software

1 Downloads

Preview:

Click to see full reader

DESCRIPTION

What's new in Spring 4? Plus an introduction to Spring Data Modules

Transcript

Spring Framework 4and Spring DataWHAT’S NEW

Agenda Intro to Spring IoC

◦ Spring 3.x highlights

What’s new in Spring Core 4◦ @Conditional◦ Spring Boot◦ Autowiring voor Generic types

Spring Data◦ SQL and NoSQL◦ Generic Query Framework

Intro to Spring Framework Inversion of Control Pattern

◦ GoF °1995: Strategy Pattern◦ Program using interfaces◦ Clients are not tied to implementations

◦ Dependency Injection◦ Central Application Context to wire implementations together◦ Hollywood Principle: Don’t call us, we’ll call you◦ Allows better testing

Spring Framework◦ Rod Johnson book on J2EE: Spring 0.1 °2002

◦ Application context using XML descriptors◦ ‘Faster, Beter, Lighter Java’: O’Reilly °2004

◦ Spring and Hibernate as alternative to J2EE/EJB 1/EJB 2

Spring Framework Modules Spring includes various abstraction modules

◦ Database abstraction◦ Exception Handling◦ JDBC Abstraction◦ Hibernate/JPA Session Management (deprecated)

◦ Remoting◦ Data serialization abstraction◦ Exception Handling

◦ Messaging◦ JMS API Abstraction◦ Data serialization abstraction

◦ Management◦ JMX API Abstraction

Spring Framework also has Spring MVC and Spring WebFlow

Spring 3.x Highlights Spring 2.5

◦ @Autowired and @Component classpath scanning◦ Less XML

Spring 3.0◦ JavaConfig iso XML Config files

◦ Even less XML

Spring 3.1◦ Bean Profiles◦ TestContext support

Spring 3.2◦ Spring MVC improvements

◦ Spring MVC REST

Spring Framework 4 No big changes

◦ Mostly everything is backwards compatible◦ Except @Autowired with Generics

◦ Some deprecated methods are finally removed◦ E.g: ibatis ORM support◦ Spring MVC base classes before annotation support

Some new features◦ @Conditional◦ Spring Boot◦ Support for Groovy iso XML

Some modules major upgrade◦ Spring MVC with WebSocket support

WebSockets in Spring 4 DEMO: https://github.com/rstoyanchev/spring-websocket-portfolio

Spring Data Data Persistence abstraction

◦ Supports both SQL and NoSQL◦ JPA/JDBC◦ MongoDB/Hadoop

◦ Repository abstraction◦ Save/load/delete◦ Paging and sorting

◦ Entity annotations are stilimplementation specific

◦ Query Language abstraction◦ QueryDSL

Spring Data Queries Declare methods in your repository interface

◦ findByXxxx◦ Spring AOP will generate

Implementation

Or: use @Query annotation

Spring Data DEMO

Questions

top related