java application development framework that fit in your requirement

17
Frameworks build for scalability Java Application Development

Upload: nexsoftsys

Post on 10-Feb-2017

530 views

Category:

Technology


1 download

TRANSCRIPT

Page 1: Java application development framework that fit in your requirement

Frameworks build for scalability

Java Application Development

Page 2: Java application development framework that fit in your requirement

What is framework?

➢ In programming, the framework is : In programming, the framework is :

➢ An abstraction in which common code An abstraction in which common code

providing generic functionality can be providing generic functionality can be

selectively overridden or specialized by selectively overridden or specialized by

user code providing specifc functionality user code providing specifc functionality

- Wikipedia

Page 3: Java application development framework that fit in your requirement

Reasons to use framework

➢ Reduced development efort by using core Reduced development efort by using core

collection classes arather than implementing collection classes arather than implementing

our own collection classes. our own collection classes.

➢ Code quality is enhanced with the use of well Code quality is enhanced with the use of well

tested collections framework classes. tested collections framework classes.

➢ Reduced efort for code maintenance by Reduced efort for code maintenance by

using collection classes shipped with JDK. using collection classes shipped with JDK.

➢ Reusability and Interoperability Reusability and Interoperability

Java Application Development Frameworks

Page 4: Java application development framework that fit in your requirement

What is MVC?➢ Model–view–controller (MVC) is a software Model–view–controller (MVC) is a software

architectural pattern for implementing user architectural pattern for implementing user

interfaces. interfaces.

➢ It divides a given software application into It divides a given software application into

three interconnected parts, so as to separate three interconnected parts, so as to separate

internal representations of information from internal representations of information from

the ways that information is presented to or the ways that information is presented to or

accepted from the user accepted from the user - Wikipedia

Page 5: Java application development framework that fit in your requirement

MVC Basic Structure

Model

View Controller

User

UPDATES MANIPULATES

SEES USES

Page 6: Java application development framework that fit in your requirement

Frameworks

➢ MVC frameworks have been a staple of Java MVC frameworks have been a staple of Java

development including such popular development including such popular

frameworks : frameworks :

1.1. SpringSpring

2.2. SparkSpark

3.3. PlayPlay

4.4. DropwizardDropwizard

Java Application Development Frameworks

Page 7: Java application development framework that fit in your requirement

How it works?

➢ Typically these applications host the view Typically these applications host the view

code on the server, where it is rendered and code on the server, where it is rendered and

delivered to the client (web browser). delivered to the client (web browser).

➢ Click a link or submit a form in your browser Click a link or submit a form in your browser

and it submits a request to the server, which and it submits a request to the server, which

does the requested work and builds a new does the requested work and builds a new

view, refreshing the entire display in your view, refreshing the entire display in your

user's computer. user's computer.

Page 8: Java application development framework that fit in your requirement

Considerable factors

Spring Play Dropwizard Spark

License Apache 2 Apache 2 Apache 2 Apache 2

HTTP Undertow1 Netty Jetty Jetty

REST Spring MVC2 Play5 Jersey Spark5

JSON Jackson3 Jackson Jackson Gson

Templates JSP4 Twirl Mustache4 Mustache4

WebSockets Spring API5 Play5 via Jetty via Jetty

DB/ORM Spring Data5 Ebean JDBI [MyBatis]6

Auth Spring Security5 Play5 Dropwizard [Shiro]6

Page 9: Java application development framework that fit in your requirement

Table specification

1.1. Spring Boot also supports Tomcat and Jetty. Spring Boot also supports Tomcat and Jetty.2.2. Spring also supports JAX-RS using Jersey. Spring also supports JAX-RS using Jersey.3.3. Spring can be confgured to use Gson instead of Spring can be confgured to use Gson instead ofJackson.Jackson.

4.4. Other available template engines may include Other available template engines may include Freemarker, Velocity, Thymeleaf, Tiles, Handlebars, Freemarker, Velocity, Thymeleaf, Tiles, Handlebars,

and Jade. and Jade.5.5. This feature is built-in to the framework. This feature is built-in to the framework.6.6. As a lightweight framework Spark doesn’t come As a lightweight framework Spark doesn’t come

with database or auth components, however other with database or auth components, however other lightweight, single-purpose, 3rd components under lightweight, single-purpose, 3rd components under

the Apache 2 license make sense with this the Apache 2 license make sense with thisframeworkframework

Java Application Development Frameworks

Page 10: Java application development framework that fit in your requirement

Spring framework

➢ First released in 2004. First released in 2004.

➢ it expanded to include a full MVC framework it expanded to include a full MVC framework

it has continued to adapt to change and is a it has continued to adapt to change and is a

true full-service framework providing true full-service framework providing

services for security, web services, database services for security, web services, database

integrations & more. integrations & more.

Page 11: Java application development framework that fit in your requirement

Spring framework

Page 12: Java application development framework that fit in your requirement

Play framework

➢ Don't to be confused with Google Play Don't to be confused with Google Play

➢ It was conceived in 2007 as a web MVC It was conceived in 2007 as a web MVC

framework supporting REST web services as framework supporting REST web services as

a frst-class citizen. a frst-class citizen.

➢ In addition to Java, In addition to Java, Play framework Play framework supports supports

Scala, an object-oriented functional Scala, an object-oriented functional

language on the Java virtual machine. language on the Java virtual machine.

Java Application Development FrameworksJava Application Development Frameworks

Page 13: Java application development framework that fit in your requirement

Spring framework

Page 14: Java application development framework that fit in your requirement

DropWizard framework➢ It is focused on rapid development and It is focused on rapid development and

deployment of Java web applications and REST deployment of Java web applications and REST

servicesservices

➢ Mostly Mostly DropwizardDropwizard focuses on the "glue" focuses on the "glue"

between components to provide a more between components to provide a more

integrated development experience. It is integrated development experience. It is

designed to be a simple, lightweight framework designed to be a simple, lightweight framework

with everything you need to deploy your Java with everything you need to deploy your Java

project.project.

Page 15: Java application development framework that fit in your requirement

Spark framework

➢ It started in 2011 as a forward-thinking It started in 2011 as a forward-thinking

framework based upon simplicity and framework based upon simplicity and

modeled after Ruby’s framework. modeled after Ruby’s framework.

➢ The focus is on developer productivity & The focus is on developer productivity &

the extremely lightweight framework that the extremely lightweight framework that

provides just what is necessary and no provides just what is necessary and no

more for java application development more for java application development..

Page 16: Java application development framework that fit in your requirement

Spring framework

Page 17: Java application development framework that fit in your requirement

Contact Us

Address : "Royal Square", 1st Floor, Of No. 110, Nr. Shilp Tower, Tagore Road,

Rajkot - 360 001 Gujarat – India

Email : [email protected]

Twitter : twitter.com/nexsoftsys

Facebook : facebook.com/NexSoftSys

Pinterest : pinterest.com/nexsoftsys/

G+ : plus.google.com/+Nexsoftsys/posts