Spring Mvc

14
Spring MVC Ifnu Bima Artivisi ifnu.artivisi.com [email protected]

description

Presentasi tentang Spring MVC. Dibuat dengan tujuan meyakinkan client untuk menggunakan framwork ini. Isinya tentang kelebihan Spring MVC

Transcript of Spring Mvc

Page 1: Spring Mvc

Spring MVC

Ifnu Bima

Artivisi

ifnu.artivisi.com

[email protected]

Page 2: Spring Mvc

Spring Framework

Spring is a non-invasive application development framework that aims to make the life easier for Java/J2EE developers, by● Providing a DI (or IoC) container.● Providing an AOP framework that delivers services such as

declarative transaction management.● Providing abstraction for more complicated (J2EE) services and

APIs, which removes lot of ”boilerplate code”.● DI + AOP + Service Abstraction = Power to the POJO

Page 3: Spring Mvc

Spring AOPAOP infrastructureMetadata support

Declarative transactionmanagement

Spring Core

IoC Container

Spring ORMHibernate support

iBatis supportJDO support

Spring WebWebApplicationContext

Struts integrationTiles integration

Web utilities

Spring DAOTransaction Infrastructure

JDBC supportDAO support

Spring Context and Integration

ApplicationContextJNDI, EJB, JMS,Email,Remoting, WebService

Spring MVCWeb MVC Framework

JSP supportVelocity/FreeMarker support

PFD/Excel support

Modules Of The Spring Framework

Page 4: Spring Mvc

● Spring’s own implementation of Web MVC (Model2)● Integrates nicely with the middle-tier via DI● Annotation Configuration significantly reduce XML

configuration● The components of the web framework is loosely coupled● Supports several view technologies

– JSP/Tiles, Velocity, FreeMarker● Full control on HTTP low level aspect,

– e.g. HTTP Response Header, Pragma Cache, Content Type, etc● Support all HTTP Method

– GET, POST, PUT,DELETE, HEAD, OPTIONS, TRACE

Spring MVC At A GlanceSpring MVC At A GlanceSpring MVC At A Glance

Page 5: Spring Mvc

Spring MVC At A Glance

● Great documentation

● Spring Web Flow for conversational flow processing

● Powerful security support with Spring Security :– LDAP Authentication, X509, Role Based Authorization,

– Domain Object Access Control List, etc

● Highly configurable URL :– http://localhost/mystore/product/list

– Even we can do : http://localhost/mystore/productlist.php

● Portlet MVC Framework– Out of the box portlet developement to integrate with portlet container such

as liferay

Page 6: Spring Mvc

Spring MVC At A Glance

● REST support coming up (Spring 3.0 currently Milestone 2)

– Pretty url, for example :http://localhost/mystore/product/list/id/2 Instead of http://localhost/mystore/product/list?id=2

● Easy integration with javascript and Ajax library– jQuery, Prototype, Dojo

● Commonly used as backend data provider for Rich Client Frameworks

– GWT, Flex, OpenLaszlo

Page 7: Spring Mvc

Spring Integration

Spring framework is not just about database and web. Spring also support a lot of integration channel through different technology such as:

● Spring WebService

● Remoting using RMI,Hessian or Burlap

● Enterprise java beans (EJB) support

● Java Messaging Service

● Email

● Scheduling

Page 8: Spring Mvc

Whats new around spring?

● OSGi is modular architecture where you simply put additional jar to your application, and all part of application recognice it as new application module, just as easy as plugin system.

● SpringSource dm server

– completely module-based Java application server that is designed to run enterprise Java applications and Spring-powered applications with a high degree of flexibility and reliability

● Spring Security

– provides powerful and flexible security solutions for enterprise applications developed using the Spring Framework

Page 9: Spring Mvc

Whats new around spring?

● Spring WS

– aims to facilitate contract-first SOAP service development, allowing for the creation of flexible web services using one of the many ways to manipulate XML payloads

● Spring Integration

– provide a simple model for building enterprise integration solutions.

● Spring Dynamic Module

– makes it easy to build Spring applications that run in an OSGi framework

● Spring Batch

– provide bulk processing to perform business operations in mission critical environments

Page 10: Spring Mvc

Whats new around spring?

● Spring acquire Covalent, company which provide Tomcat commercial support

– Springsource is realy serious to transform SpringFramwork as full stack java ee solution

● Spring acquire G2One Company behind groovy and grails.– Groovy is new scripting language run in JVM

– Grails is groovy implementation of most productive framework rails

● Spring acquire Terracota– Terracota provide a technology that enable JVM clustering across multiple

machine

– The most eficient and inovative way to cluster java application

Page 11: Spring Mvc

Spring Community

● Spring is very popular among java programmer.

● Easy to find programmer with good spring skill.

● Lots of forum, mailing list and QA site will answer spring related question. It means you will never stuck with unsolved problem.

● Springframework.org is realy helpfull, all spring source employee, even rod johnson himself will answer any question in it's forum.

● Spring official reference is documentation attached in spring framework download bundle. It cover almost all you need, means you never need to buy any book related to spring.

Page 12: Spring Mvc

Case Study

● LinkedIn– 34 million users around the world

– http://www.springsource.com/files/LinkedIn%20Case%20Study_0.pdf

● Ariba– Released AribaWeb as open source project. AribaWeb is actually an

internal framework used by Ariba over 10 years, it use spring heavily.

● VOCA– Voca processed over 5 billion transactions worth 4.5 million EURO in 2005

– http://java.dzone.com/links/voca_a_spring_casestudy.html

● Many More– http://www.springsource.com/customer/casestudies

Page 13: Spring Mvc

Spring Stack

Spring provide full stack of java development, from core application, middle tier (database), web and integration with other system.

Implementing spring architecture means, putting the right foundation for big and complex application. Once we use spring as foundation, extending it with more feature is easy and seamless.

Big Spring implementation are there, so all related issue, bug, pitfall or any problem are already solved. We need to learn from it to avoid common mistake and to use proven architecture.

There all only positive opinion around internet about spring implementation.

Page 14: Spring Mvc

Springsource

● Company behind Spring Framwork

● Provide commercial support

● Guarantee future development of Spring framework

● Provide professional certification as spring developer

● Actively involved in JCP to direct future of java

● Mantain spring compatibility with older JVM Such as 1.4 version