SlideShare a Scribd company logo
1 of 38
Patrick Baumgartner
 Trivadis AD Consultant

 Focus on
    Web development

    OSGi / Spring dm

    Agile software development
 Roadmap

 Milestones / Feature Overview

 Spring Expression Language (SpEL)

 IoC / JavaConfig Integration

 REST Support

 Bean Validation

 New Project Layout

 GAE/J Demo
 Spring Framework 1.0   24.03.04

 Spring Framework 2.0   05.10.05

 Spring Framework 2.5   19.11.07
 Spring Framework 3.0 M1        08.12.09

 Spring Framework 3.0 M2        01.03.09

 Spring Framework 3.0 M3        Q1 2009

 Spring Framework 3.0 RC 1      Q2 2009



 Spring Framework 3.0 RELEASE   Q2 2009
 Spring EL and REST support

 Updated codebase for Java 5 code style

 Updated to JUnit 4.5 and JRuby 1.1

 @PathVariable , @RequestParam,
      @RequestHeader, @CookieValue

 AbstractAtomFeedView and AbstractRssFeedView

 <spring:url> and <spring:param> JSP tags
 Further Java 5 style API updates

 Extended concurrency support

 OXM module in core

 RestTemplate

 MVC on Portlet 2.0

 Early JPA 2.0 support
 Annotation-based factory methods

 Declarative validation (based on JSR-303 quot;Bean
  Validationquot;)

 New XML configuration namespaces
  (orm, scheduling)

 Spring MVC: conversation management

 Preparations for JSF 2.0
 Overdue since weeks

 Release at SpringOne Europe 2009 Conference ?!



 Jira History
    Tuesday 21.04.09 - 14 Issues left

    Wednesday 22.04.09 - 7 Issues left

    Yesterday 24.04.09 – 8 Issues left

    Today ... 9 Issues left
 requires Java 5 or above

 requires J2EE 1.4 or above

 Some spring cleaning (removed/deprecated outdated
  classes)

 SpringSource is building the Spring Framework on
  Java 6 and Java EE 5

 But still compatible with Java 5 enabled J2EE 1.4
  servers such as WebLogic 9 and WebSphere 6.1.
 EL implementation included in Spring 3.0
    package org.springframework.expression

    next-generation expression engine inspired by Spring
     Web Flow 2.0's expression support

 Compatible with Unified EL syntax and morepowerful

    navigating bean properties, collections, maps, custom

      method invocations

    construction of value objects
 Implicit variables
    systemProperties , systemEnvironment

        global platform context

 Spring beans by name

    similar to managed beans in JSF expressions
 @Configuration

 @Bean

 @Primary

 @Lazy

 @Import

 @Value
 Spring MVC 3 provides support for REST-style
  mappings
    extraction of URI template parameters

    content negotiation in view resolver

 Goal: Native REST support within Spring MVC, for UI
  as well as non-UI usage
    in natural MVC style
 @RequestMapping

 @RequestParam

 @PathVariable

 @ModelAttributes

 @SessionAttributes

 @CookieValue

 @RequestHeader
 Allows HTML browsers to emulate PUT and DELETE
  requests
    HTML forms only support GET/POST natively

 Special hidden parameter determines RequestMethod
In view:


 Metadata can be used for persisting, rendering, etc

 Spring: to be supported for MVC data binding

 JSR-303 quot;Bean Validationquot; as the common ground
 Framework modules revised
    now managed in Maven style

    one source tree per module jar

       spring-beans.jar, spring-aop.jar, etc

    no spring.jar anymore!
 Built with new Spring build system as known from
  Spring Web Flow 2.0
    Ivy-based quot;Spring Buildquot; system

    consistent deployment procedure

    consistent dependency management

    consistent generation of OSGi manifests
 Modularity, shipped as OSGi Bundles

 ADD – Annotation Driven Development

 Spring JavaConfig integration in Core Module

 RESTful Support

 Spring EL (SpEL) is Unified EL ++

 Bean Validation
Email:     patrick.baumgartner@trivadis.com

Twitter:   @patbaumgartner
 What’s New in Spring 3 by Keith
  Donald, SpringSource

 http://blog.springsource.com/2008/12/05/spring-
  framework-30-m1-released/

 http://blog.springsource.com/2009/02/25/spring-
  framework-30-m2-released/

 http://raibledesigns.com/rd/entry/what_s_coming_i
  n_spring

More Related Content

What's hot

Indic threads pune12-improve testing efficiency with selenium webdriver
Indic threads pune12-improve testing efficiency with selenium webdriverIndic threads pune12-improve testing efficiency with selenium webdriver
Indic threads pune12-improve testing efficiency with selenium webdriverIndicThreads
 
Single Page Application (SPA) using AngularJS
Single Page Application (SPA) using AngularJSSingle Page Application (SPA) using AngularJS
Single Page Application (SPA) using AngularJSM R Rony
 
What's new in asp.net mvc 4
What's new in asp.net mvc 4What's new in asp.net mvc 4
What's new in asp.net mvc 4Simone Chiaretta
 
Require JS
Require JSRequire JS
Require JSImaginea
 
End to-End SPA Development Using ASP.NET and AngularJS
End to-End SPA Development Using ASP.NET and AngularJSEnd to-End SPA Development Using ASP.NET and AngularJS
End to-End SPA Development Using ASP.NET and AngularJSGil Fink
 
Creating Tomorrow’s Web Applications Using Today’s Technologies
Creating Tomorrow’s Web Applications Using Today’s Technologies Creating Tomorrow’s Web Applications Using Today’s Technologies
Creating Tomorrow’s Web Applications Using Today’s Technologies Code Mastery
 
Getting started with MVC 5 and Visual Studio 2013
Getting started with MVC 5 and Visual Studio 2013Getting started with MVC 5 and Visual Studio 2013
Getting started with MVC 5 and Visual Studio 2013Thomas Robbins
 
Asp.net mvc presentation by Nitin Sawant
Asp.net mvc presentation by Nitin SawantAsp.net mvc presentation by Nitin Sawant
Asp.net mvc presentation by Nitin SawantNitin Sawant
 
MVC ppt presentation
MVC ppt presentationMVC ppt presentation
MVC ppt presentationBhavin Shah
 
ASP.NET MVC Presentation
ASP.NET MVC PresentationASP.NET MVC Presentation
ASP.NET MVC Presentationivpol
 
Asp.net mvc 5 course module 1 overview
Asp.net mvc 5 course   module 1 overviewAsp.net mvc 5 course   module 1 overview
Asp.net mvc 5 course module 1 overviewSergey Seletsky
 

What's hot (20)

Indic threads pune12-improve testing efficiency with selenium webdriver
Indic threads pune12-improve testing efficiency with selenium webdriverIndic threads pune12-improve testing efficiency with selenium webdriver
Indic threads pune12-improve testing efficiency with selenium webdriver
 
Single Page Application (SPA) using AngularJS
Single Page Application (SPA) using AngularJSSingle Page Application (SPA) using AngularJS
Single Page Application (SPA) using AngularJS
 
ASP .Net MVC 5
ASP .Net MVC 5ASP .Net MVC 5
ASP .Net MVC 5
 
Selenium
SeleniumSelenium
Selenium
 
ASP.NET MVC 3
ASP.NET MVC 3ASP.NET MVC 3
ASP.NET MVC 3
 
What's new in asp.net mvc 4
What's new in asp.net mvc 4What's new in asp.net mvc 4
What's new in asp.net mvc 4
 
Require JS
Require JSRequire JS
Require JS
 
Beginning In J2EE
Beginning In J2EEBeginning In J2EE
Beginning In J2EE
 
EmberJS + SPA
EmberJS + SPAEmberJS + SPA
EmberJS + SPA
 
End to-End SPA Development Using ASP.NET and AngularJS
End to-End SPA Development Using ASP.NET and AngularJSEnd to-End SPA Development Using ASP.NET and AngularJS
End to-End SPA Development Using ASP.NET and AngularJS
 
Creating Tomorrow’s Web Applications Using Today’s Technologies
Creating Tomorrow’s Web Applications Using Today’s Technologies Creating Tomorrow’s Web Applications Using Today’s Technologies
Creating Tomorrow’s Web Applications Using Today’s Technologies
 
Mar 16 report
Mar 16 reportMar 16 report
Mar 16 report
 
Getting started with MVC 5 and Visual Studio 2013
Getting started with MVC 5 and Visual Studio 2013Getting started with MVC 5 and Visual Studio 2013
Getting started with MVC 5 and Visual Studio 2013
 
Asp.net mvc
Asp.net mvcAsp.net mvc
Asp.net mvc
 
Ch. 11 deploying
Ch. 11 deployingCh. 11 deploying
Ch. 11 deploying
 
Asp.net mvc presentation by Nitin Sawant
Asp.net mvc presentation by Nitin SawantAsp.net mvc presentation by Nitin Sawant
Asp.net mvc presentation by Nitin Sawant
 
MVC ppt presentation
MVC ppt presentationMVC ppt presentation
MVC ppt presentation
 
ASP.NET MVC Presentation
ASP.NET MVC PresentationASP.NET MVC Presentation
ASP.NET MVC Presentation
 
Javascript & Jquery
Javascript & JqueryJavascript & Jquery
Javascript & Jquery
 
Asp.net mvc 5 course module 1 overview
Asp.net mvc 5 course   module 1 overviewAsp.net mvc 5 course   module 1 overview
Asp.net mvc 5 course module 1 overview
 

Similar to Whats New In Spring 3.0 ?

Spring Framework
Spring Framework  Spring Framework
Spring Framework tola99
 
Application Architecture Trends
Application Architecture TrendsApplication Architecture Trends
Application Architecture TrendsSrini Penchikala
 
Java EE 8 Update
Java EE 8 UpdateJava EE 8 Update
Java EE 8 UpdateRyan Cuprak
 
PUC SE Day 2019 - SpringBoot
PUC SE Day 2019 - SpringBootPUC SE Day 2019 - SpringBoot
PUC SE Day 2019 - SpringBootJosué Neis
 
Spring framework-tutorial
Spring framework-tutorialSpring framework-tutorial
Spring framework-tutorialvinayiqbusiness
 
JAVAJ2EE DeveloperSummary · 7 years of versatile e.docx
JAVAJ2EE DeveloperSummary       · 7 years of versatile e.docxJAVAJ2EE DeveloperSummary       · 7 years of versatile e.docx
JAVAJ2EE DeveloperSummary · 7 years of versatile e.docxchristiandean12115
 
Sid K
Sid KSid K
Sid KSid K
 
Comparing Hot JavaScript Frameworks: AngularJS, Ember.js and React.js - Sprin...
Comparing Hot JavaScript Frameworks: AngularJS, Ember.js and React.js - Sprin...Comparing Hot JavaScript Frameworks: AngularJS, Ember.js and React.js - Sprin...
Comparing Hot JavaScript Frameworks: AngularJS, Ember.js and React.js - Sprin...Matt Raible
 
Spring 4-groovy
Spring 4-groovySpring 4-groovy
Spring 4-groovyGR8Conf
 
How Spring Framework Really Works?
How Spring Framework Really Works?How Spring Framework Really Works?
How Spring Framework Really Works?NexSoftsys
 
Session 46 - Spring - Part 4 - Spring MVC
Session 46 - Spring - Part 4 - Spring MVCSession 46 - Spring - Part 4 - Spring MVC
Session 46 - Spring - Part 4 - Spring MVCPawanMM
 
Bala Sr Java Developer
Bala  Sr Java DeveloperBala  Sr Java Developer
Bala Sr Java DeveloperJava Dev
 
Struts2-Spring=Hibernate
Struts2-Spring=HibernateStruts2-Spring=Hibernate
Struts2-Spring=HibernateJay Shah
 
Spring - Part 4 - Spring MVC
Spring - Part 4 - Spring MVCSpring - Part 4 - Spring MVC
Spring - Part 4 - Spring MVCHitesh-Java
 

Similar to Whats New In Spring 3.0 ? (20)

Spring Framework
Spring Framework  Spring Framework
Spring Framework
 
Resume
ResumeResume
Resume
 
Application Architecture Trends
Application Architecture TrendsApplication Architecture Trends
Application Architecture Trends
 
JSF2
JSF2JSF2
JSF2
 
Java EE 8 Update
Java EE 8 UpdateJava EE 8 Update
Java EE 8 Update
 
PUC SE Day 2019 - SpringBoot
PUC SE Day 2019 - SpringBootPUC SE Day 2019 - SpringBoot
PUC SE Day 2019 - SpringBoot
 
Spring
SpringSpring
Spring
 
Spring framework-tutorial
Spring framework-tutorialSpring framework-tutorial
Spring framework-tutorial
 
Java EE 6 & Spring: A Lover's Quarrel
Java EE 6 & Spring: A Lover's QuarrelJava EE 6 & Spring: A Lover's Quarrel
Java EE 6 & Spring: A Lover's Quarrel
 
JAVAJ2EE DeveloperSummary · 7 years of versatile e.docx
JAVAJ2EE DeveloperSummary       · 7 years of versatile e.docxJAVAJ2EE DeveloperSummary       · 7 years of versatile e.docx
JAVAJ2EE DeveloperSummary · 7 years of versatile e.docx
 
Sid K
Sid KSid K
Sid K
 
Comparing Hot JavaScript Frameworks: AngularJS, Ember.js and React.js - Sprin...
Comparing Hot JavaScript Frameworks: AngularJS, Ember.js and React.js - Sprin...Comparing Hot JavaScript Frameworks: AngularJS, Ember.js and React.js - Sprin...
Comparing Hot JavaScript Frameworks: AngularJS, Ember.js and React.js - Sprin...
 
Next stop: Spring 4
Next stop: Spring 4Next stop: Spring 4
Next stop: Spring 4
 
Spring 4-groovy
Spring 4-groovySpring 4-groovy
Spring 4-groovy
 
How Spring Framework Really Works?
How Spring Framework Really Works?How Spring Framework Really Works?
How Spring Framework Really Works?
 
Session 46 - Spring - Part 4 - Spring MVC
Session 46 - Spring - Part 4 - Spring MVCSession 46 - Spring - Part 4 - Spring MVC
Session 46 - Spring - Part 4 - Spring MVC
 
Bala Sr Java Developer
Bala  Sr Java DeveloperBala  Sr Java Developer
Bala Sr Java Developer
 
Struts2-Spring=Hibernate
Struts2-Spring=HibernateStruts2-Spring=Hibernate
Struts2-Spring=Hibernate
 
Spring - Part 4 - Spring MVC
Spring - Part 4 - Spring MVCSpring - Part 4 - Spring MVC
Spring - Part 4 - Spring MVC
 
Spring Mvc
Spring MvcSpring Mvc
Spring Mvc
 

More from Patrick Baumgartner

Neo4j Introduction (for Techies)
Neo4j Introduction (for Techies)Neo4j Introduction (for Techies)
Neo4j Introduction (for Techies)Patrick Baumgartner
 
No Sql in Enterprise Java Applications
No Sql in Enterprise Java ApplicationsNo Sql in Enterprise Java Applications
No Sql in Enterprise Java ApplicationsPatrick Baumgartner
 
Daten natuerlich modellieren und verarbeiten mit Neo4j
Daten natuerlich modellieren und verarbeiten mit Neo4jDaten natuerlich modellieren und verarbeiten mit Neo4j
Daten natuerlich modellieren und verarbeiten mit Neo4jPatrick Baumgartner
 
How to use NoSQL in Enterprise Java Applications - NoSQL Roadshow Basel
How to use NoSQL in Enterprise Java Applications - NoSQL Roadshow BaselHow to use NoSQL in Enterprise Java Applications - NoSQL Roadshow Basel
How to use NoSQL in Enterprise Java Applications - NoSQL Roadshow BaselPatrick Baumgartner
 
How to use NoSQL in Enterprise Java Applications - NoSQL Roadshow Zurich
How to use NoSQL in Enterprise Java Applications - NoSQL Roadshow ZurichHow to use NoSQL in Enterprise Java Applications - NoSQL Roadshow Zurich
How to use NoSQL in Enterprise Java Applications - NoSQL Roadshow ZurichPatrick Baumgartner
 
BED-Con - Tools für den täglichen Kampf als Entwickler
BED-Con - Tools für den täglichen Kampf als EntwicklerBED-Con - Tools für den täglichen Kampf als Entwickler
BED-Con - Tools für den täglichen Kampf als EntwicklerPatrick Baumgartner
 
JFS 2011 - Top 10 Tools & Methoden - Baumgartner, Oehmichen
JFS 2011 - Top 10 Tools & Methoden - Baumgartner, OehmichenJFS 2011 - Top 10 Tools & Methoden - Baumgartner, Oehmichen
JFS 2011 - Top 10 Tools & Methoden - Baumgartner, OehmichenPatrick Baumgartner
 
OSGi für Praktiker - Web Applikationen und verteilte Systeme mit OSGi
OSGi für Praktiker - Web Applikationen und verteilte Systeme mit OSGiOSGi für Praktiker - Web Applikationen und verteilte Systeme mit OSGi
OSGi für Praktiker - Web Applikationen und verteilte Systeme mit OSGiPatrick Baumgartner
 
Pax – Tools für den OSGi Alltag
Pax – Tools für den OSGi AlltagPax – Tools für den OSGi Alltag
Pax – Tools für den OSGi AlltagPatrick Baumgartner
 

More from Patrick Baumgartner (11)

Customer is king
Customer is kingCustomer is king
Customer is king
 
Neo4j Introduction (for Techies)
Neo4j Introduction (for Techies)Neo4j Introduction (for Techies)
Neo4j Introduction (for Techies)
 
No Sql in Enterprise Java Applications
No Sql in Enterprise Java ApplicationsNo Sql in Enterprise Java Applications
No Sql in Enterprise Java Applications
 
Daten natuerlich modellieren und verarbeiten mit Neo4j
Daten natuerlich modellieren und verarbeiten mit Neo4jDaten natuerlich modellieren und verarbeiten mit Neo4j
Daten natuerlich modellieren und verarbeiten mit Neo4j
 
How to use NoSQL in Enterprise Java Applications - NoSQL Roadshow Basel
How to use NoSQL in Enterprise Java Applications - NoSQL Roadshow BaselHow to use NoSQL in Enterprise Java Applications - NoSQL Roadshow Basel
How to use NoSQL in Enterprise Java Applications - NoSQL Roadshow Basel
 
How to use NoSQL in Enterprise Java Applications - NoSQL Roadshow Zurich
How to use NoSQL in Enterprise Java Applications - NoSQL Roadshow ZurichHow to use NoSQL in Enterprise Java Applications - NoSQL Roadshow Zurich
How to use NoSQL in Enterprise Java Applications - NoSQL Roadshow Zurich
 
BED-Con - Tools für den täglichen Kampf als Entwickler
BED-Con - Tools für den täglichen Kampf als EntwicklerBED-Con - Tools für den täglichen Kampf als Entwickler
BED-Con - Tools für den täglichen Kampf als Entwickler
 
JFS 2011 - Top 10 Tools & Methoden - Baumgartner, Oehmichen
JFS 2011 - Top 10 Tools & Methoden - Baumgartner, OehmichenJFS 2011 - Top 10 Tools & Methoden - Baumgartner, Oehmichen
JFS 2011 - Top 10 Tools & Methoden - Baumgartner, Oehmichen
 
OSGi für Praktiker - Web Applikationen und verteilte Systeme mit OSGi
OSGi für Praktiker - Web Applikationen und verteilte Systeme mit OSGiOSGi für Praktiker - Web Applikationen und verteilte Systeme mit OSGi
OSGi für Praktiker - Web Applikationen und verteilte Systeme mit OSGi
 
Pax – Tools für den OSGi Alltag
Pax – Tools für den OSGi AlltagPax – Tools für den OSGi Alltag
Pax – Tools für den OSGi Alltag
 
OSGi with the Spring Framework
OSGi with the Spring FrameworkOSGi with the Spring Framework
OSGi with the Spring Framework
 

Recently uploaded

Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
Training state-of-the-art general text embedding
Training state-of-the-art general text embeddingTraining state-of-the-art general text embedding
Training state-of-the-art general text embeddingZilliz
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clashcharlottematthew16
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machinePadma Pradeep
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):comworks
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfAlex Barbosa Coqueiro
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyAlfredo García Lavilla
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024Stephanie Beckett
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLScyllaDB
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024Lorenzo Miniero
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsSergiu Bodiu
 
Search Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfSearch Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfRankYa
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticscarlostorres15106
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationSafe Software
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsMemoori
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenHervé Boutemy
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationRidwan Fadjar
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr LapshynFwdays
 

Recently uploaded (20)

Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
Training state-of-the-art general text embedding
Training state-of-the-art general text embeddingTraining state-of-the-art general text embedding
Training state-of-the-art general text embedding
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clash
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machine
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):
 
Unraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdfUnraveling Multimodality with Large Language Models.pdf
Unraveling Multimodality with Large Language Models.pdf
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easy
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQL
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024
 
DevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platformsDevEX - reference for building teams, processes, and platforms
DevEX - reference for building teams, processes, and platforms
 
Search Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfSearch Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdf
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial Buildings
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache Maven
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
 
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
"Federated learning: out of reach no matter how close",Oleksandr Lapshyn
 

Whats New In Spring 3.0 ?

  • 2.  Trivadis AD Consultant  Focus on  Web development  OSGi / Spring dm  Agile software development
  • 3.
  • 4.  Roadmap  Milestones / Feature Overview  Spring Expression Language (SpEL)  IoC / JavaConfig Integration  REST Support  Bean Validation  New Project Layout  GAE/J Demo
  • 5.
  • 6.
  • 7.  Spring Framework 1.0 24.03.04  Spring Framework 2.0 05.10.05  Spring Framework 2.5 19.11.07
  • 8.  Spring Framework 3.0 M1 08.12.09  Spring Framework 3.0 M2 01.03.09  Spring Framework 3.0 M3 Q1 2009  Spring Framework 3.0 RC 1 Q2 2009  Spring Framework 3.0 RELEASE Q2 2009
  • 9.  Spring EL and REST support  Updated codebase for Java 5 code style  Updated to JUnit 4.5 and JRuby 1.1  @PathVariable , @RequestParam, @RequestHeader, @CookieValue  AbstractAtomFeedView and AbstractRssFeedView  <spring:url> and <spring:param> JSP tags
  • 10.  Further Java 5 style API updates  Extended concurrency support  OXM module in core  RestTemplate  MVC on Portlet 2.0  Early JPA 2.0 support
  • 11.  Annotation-based factory methods  Declarative validation (based on JSR-303 quot;Bean Validationquot;)  New XML configuration namespaces (orm, scheduling)  Spring MVC: conversation management  Preparations for JSF 2.0
  • 12.  Overdue since weeks  Release at SpringOne Europe 2009 Conference ?!  Jira History  Tuesday 21.04.09 - 14 Issues left  Wednesday 22.04.09 - 7 Issues left  Yesterday 24.04.09 – 8 Issues left  Today ... 9 Issues left
  • 13.  requires Java 5 or above  requires J2EE 1.4 or above  Some spring cleaning (removed/deprecated outdated classes)  SpringSource is building the Spring Framework on Java 6 and Java EE 5  But still compatible with Java 5 enabled J2EE 1.4 servers such as WebLogic 9 and WebSphere 6.1.
  • 14.
  • 15.  EL implementation included in Spring 3.0  package org.springframework.expression  next-generation expression engine inspired by Spring Web Flow 2.0's expression support  Compatible with Unified EL syntax and morepowerful  navigating bean properties, collections, maps, custom  method invocations  construction of value objects
  • 16.
  • 17.
  • 18.  Implicit variables  systemProperties , systemEnvironment  global platform context  Spring beans by name  similar to managed beans in JSF expressions
  • 19.  @Configuration  @Bean  @Primary  @Lazy  @Import  @Value
  • 20.
  • 21.  Spring MVC 3 provides support for REST-style mappings  extraction of URI template parameters  content negotiation in view resolver  Goal: Native REST support within Spring MVC, for UI as well as non-UI usage  in natural MVC style
  • 22.  @RequestMapping  @RequestParam  @PathVariable  @ModelAttributes  @SessionAttributes  @CookieValue  @RequestHeader
  • 23.
  • 24.
  • 25.
  • 26.  Allows HTML browsers to emulate PUT and DELETE requests  HTML forms only support GET/POST natively  Special hidden parameter determines RequestMethod
  • 27. In view:  Metadata can be used for persisting, rendering, etc  Spring: to be supported for MVC data binding  JSR-303 quot;Bean Validationquot; as the common ground
  • 28.  Framework modules revised  now managed in Maven style  one source tree per module jar  spring-beans.jar, spring-aop.jar, etc  no spring.jar anymore!
  • 29.  Built with new Spring build system as known from Spring Web Flow 2.0  Ivy-based quot;Spring Buildquot; system  consistent deployment procedure  consistent dependency management  consistent generation of OSGi manifests
  • 30.
  • 31.
  • 32.
  • 33.
  • 34.  Modularity, shipped as OSGi Bundles  ADD – Annotation Driven Development  Spring JavaConfig integration in Core Module  RESTful Support  Spring EL (SpEL) is Unified EL ++  Bean Validation
  • 35.
  • 36. Email: patrick.baumgartner@trivadis.com Twitter: @patbaumgartner
  • 37.
  • 38.  What’s New in Spring 3 by Keith Donald, SpringSource  http://blog.springsource.com/2008/12/05/spring- framework-30-m1-released/  http://blog.springsource.com/2009/02/25/spring- framework-30-m2-released/  http://raibledesigns.com/rd/entry/what_s_coming_i n_spring

Editor's Notes

  1. 18 Portfolio Projects
  2. Dropping Support for JUnit 3.8 Test Classes Commons Attributes MVC Controller Hierarchy TopLink (new EclipseLink)
  3. Some core features from the JavaConfig project have been added to the Spring Framework now. This means that the following annotations are now directly supported
  4. To get this to work you need to add the following component scanning entry in your minimal application context XML file. <context:component-scan base-package=\"com.myco.config\"/>