java application development framework that fit in your requirement
TRANSCRIPT
Frameworks build for scalability
Java Application Development
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
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
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
MVC Basic Structure
Model
View Controller
User
UPDATES MANIPULATES
SEES USES
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
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.
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
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
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.
Spring framework
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
Spring framework
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.
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..
Spring framework
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