In this section we are providing tutorials on various Java Frameworks.




In this section we are providing tutorials on various Java Frameworks. We have categorized these tutorials in various sections. You can easily navigate to these tutorials.

What is Frameworks?

Framework is set of reusable software program that forms the basis for an application. Frameworks helps the programmers to build the application quickly. Earlier it was very hard to develop complex web applications. Now its very easy to develop such application using different kinds of frameworks such as Struts, Struts 2, Hibernate,  JSF, Tapestry, JUnit, Log4j, Spring etc.

In Java technology there are so many frameworks that helps the programmers to build complex applications easily. You can choose these frameworks for building your applications.

Software Framework

Framework software in computer system is a layered structure that indicates what kind of program should be built and how they would interrelate to one another. In computer system, a framework is a conceptual structure that sometime includes actual programs, which specify programming interface or offer programming tools for using the frameworks.

Framework Tutorials:

A framework may be for a set of functions within a system, the layers of an operating system, the layers of an application subsystem that specify how to correlate at some level of network and so on. In general term, we can say that a framework is more comprehensive than a protocol and more prescriptive than a structure.


Like software libraries, frameworks are reusable abstractions of code within a well-defined API, but distinctive feature separate them from libraries or normal user applications:

Inversion of control – The framework completely controls the flow of the programs while in libraries, the caller or user controls the flow the programs not the libraries.

Default behavior - A framework has a default behavior. This default behavior must actually be some useful behavior and not a series of no-ops.

Extensibility - Through selective overriding or specialized user code, a framework can be extended to achieve specific function. 

Non-modifiable framework code - The framework code is rigid and modification is not allowed in it. It can be extended but not modified.


The biggest advantage of the software framework is that it reduces the time and energy in developing any software. Frameworks provides a standard working system through which user can develop the desired module of application or complete application instead of developing lower level details. Using frameworks, the developers can devote more time in developing the software requirement, not in preparing the environment and tools of application development.

For the novice user, it is tougher to use the framework quickly as it is big and complex abstract and user has to spend more time in assessing the concept, function and its uses in developing the program, which enhances the development but after learning how to use it efficiently, it becomes easier and quicker to develop any program, module of application.  

Another disadvantage is that a generic ‘one-size-fits-all’ does not work so efficiently for any specific software. There is need to extend framework with specific code to develop any specific software.


Software frameworks support and enhance the efficiency and productivity of the application development but it faces some problems in some specific domains like:

  • Artistic drawing, music composition, and mechanical CAD
  • Compilers for different programming languages and target machines
  • Financial modeling applications
  • Earth system modeling applications
  • Decision support systems
  • Media playback and authoring
  • Web applications
  • Middleware

Framework architecture consists of frozen spots and hot spots (a virtual name), which are the basic components. The frozen spots define the overall architecture of a software system while hot spots represent those parts where the programmers add their own code to add the functionality specific to their own projects using framework.

In an object-oriented environment, a framework consists of abstract and concrete classes. Instantiation of such a framework consists of composing and subclassing the existing classes.

When developing a concrete software system with a software framework, developers utilize the hot spots according to the specific needs and requirements of the system that means the user-defined classes (for example, new subclasses), receive messages from the predefined framework classes. Developers usually handle this by implementing superclass abstract methods.

Share on Google+Share on Google+


Posted on: September 22, 2006 If you enjoyed this post then why not add us on Google+? Add us to your Circles



Discuss: Frameworks   View All Comments

Post your Comment

Your Name (*) :
Your Email :
Subject (*):
Your Comment (*):
  Reload Image
June 15, 2013

Wodenfurl explanation of facts available here.
June 15, 2013

Yeah that's what I'm tlaikng about baby--nice work!
Kevin Panjari
June 29, 2013

I new to hibernate platform. so, I want to know about hibernate in easiest way... please, need some answers....
July 15, 2013

import java.sql.*; public class demojdbc{ public static void main(String[]args)throws Exception { int count=0; double payroll=0.0; ResultSet rslset1=null; String names; double salaries; Connection conn; String db="jdbc:odbc:db1"; String username=""; String password=""; conn=DriverManager.getConnection(db, username, password); System.out.println("***Connected to the database***"); Statement smnt=smnt.executeQuery("select, e.salary + " " + from Emp e + " " + where e.Dept='toys' "); System.out.println(); System.out.println("Name Salary"); System.out.println("---- ------"); while(; salaries= rslset1.getInt("salary"); System.out.println(names + " " + salaries); count=count+1; payroll=payroll + salaries; } System.out.println(); System.out.println(); System.out.println("number of employes in toys Department" + count); System.out.println("Total payroll for toys Department" + payroll); smnt.close(); preparedStatement stmt2=conn.preparedStatement ("update emp" + "set dept=?, salary=?" + " "+ "where Name=?"); stmt2.setString(1,"shoes"); stmt2.setDouble(2, 65000.0); stmt2.setString(3,"Hari"); stmt2.executeUpdate(); stmt2.setString(1,"credit"); stmt2.setDouble(2, "75000.0"); stmt2.setString(3,"Leu"); stmt2.executeUpdate(); stmt2.close(); conn.commit(); conn.close(); } I m nt able to run this program when i m shows plenty of errors could someone help me to run the program.
Ebrahim Diangca
July 24, 2013
Interactive CAI Learning Games

Give me some Idea About my project poh. My Project is about Interactive CAI Learning Games for Preschool. Somebody can help me. please. Tnx.
naresh b
September 12, 2013
sample selenium RC/Webdriver programs

i am looking for some sample selenium programs,please provides us.
sumayya Turab
September 20, 2013

thank u i understood the concept of frame works
July 7, 2014

what is frame work?can you explain in simple way?
April 2, 2014

which framework is best for web app development