Spring is the most popular application development framework for
enterprise Java. Millions of developers around the world use Spring
Framework to create high performing, easily testable, reusable code.
Labels
.
Search Your Article
Total Pageviews
Monday, January 23, 2017
Spring Framework - Architecture
Spring could potentially be a one-stop shop for all your enterprise
applications, however, Spring is modular, allowing you to pick and
choose which modules are applicable to you, without having to bring in
the rest. Following section gives detail about all the modules available
in Spring Framework.
Spring - Environment Setup
This tutorial will guide you on how to prepare a development
environment to start your work with Spring Framework. This tutorial will
also teach you how to setup JDK, Tomcat and Eclipse on your machine
before you setup Spring Framework:
Spring - Hello World Example
Let us start actual programming with Spring Framework. Before you
start writing your first example using Spring framework, you have to
make sure that you have setup your Spring environment properly as
explained in Spring - Environment Setup tutorial.
Spring - IoC Containers
The Spring container is at the core of the Spring Framework. The
container will create the objects, wire them together, configure them,
and manage their complete lifecycle from creation till destruction.
Spring - Bean Definition
The objects that form the backbone of your application and that are
managed by the Spring IoC container are called beans. A bean is an
object that is instantiated, assembled, and otherwise managed by a
Spring IoC container.
Spring - Bean Scopes
When defining a <bean> in Spring, you have the option of
declaring a scope for that bean. For example, To force Spring to produce
a new bean instance each time one is needed, you should declare the
bean's scope attribute to be prototype. Similar way if you want
Spring to return the same bean instance each time one is needed, you
should declare the bean's scope attribute to be singleton.
Spring - Bean Life Cycle
The life cycle of a Spring bean is easy to understand. When a bean is
instantiated, it may be required to perform some initialization to get
it into a usable state. Similarly, when the bean is no longer required
and is removed
from the container, some cleanup may be required.
Spring - Bean Post Processors
The BeanPostProcessor interface defines callback methods that
you can implement to provide your own instantiation logic,
dependency-resolution logic etc. You can also implement some custom
logic after the Spring container finishes instantiating, configuring,
and initializing a bean by plugging in one or more BeanPostProcessor
implementations.
Spring - Bean Definition Inheritance
A bean definition can contain a lot of configuration information,
including constructor arguments, property values, and container-specific
information such as initialization method, static factory method name,
and so on.
Spring - Dependency Injection
Every java based application has a few objects that work together to
present what the end-user sees as a working application.
Spring - Injecting Inner Beans
As you know Java inner classes are defined within the scope of other classes, similarly, inner beans
are beans that are defined within the scope of another bean. Thus, a
<bean/> element inside the <property/> or
<constructor-arg/> elements is called inner bean and it is shown
below.
Spring - Injecting Collection
You have seen how to configure primitive data type using value attribute and object references using ref
attribute of the <property> tag in your Bean configuration file.
Both the cases deal with passing singular value to a bean.
Spring - Beans Auto-Wiring
You have learnt how to declare beans using the <bean> element
and inject <bean> with using <constructor-arg> and
<property> elements in XML configuration file.
Spring - Annotation Based Configuration
Starting from Spring 2.5 it became possible to configure the dependency injection using annotations.
So instead of using XML to describe a bean wiring, you can move the
bean configuration into the component class itself by using annotations
on the relevant class, method, or field declaration.
Spring - Java Based Configuration
So far you have seen how we configure Spring beans using XML
configuration file. If you are comfortable with XML configuration, then I
will say it is really not required to learn how to proceed with Java
based configuration because you are going to achieve the same result
using either of the configurations available.
Event Handling in Spring
You have seen in all the chapters that core of Spring is the ApplicationContext,
which manages complete life cycle of the beans. The ApplicationContext
publishes certain types of events when loading the beans. For example, a
ContextStartedEvent is published when the context is started and ContextStoppedEvent is published when the context is stopped.
Custom Events in Spring
There are number of steps to be taken to write and publish your own
custom events. Follow the instructions given in this chapter to write,
publish and handle Custom Spring Events.
AOP with Spring Framework
One of the key components of Spring Framework is the Aspect oriented programming (AOP)
framework. Aspect Oriented Programming entails breaking down program
logic into distinct parts called so-called concerns.
Spring - JDBC Framework Overview
While working with database using plain old JDBC, it becomes
cumbersome to write unnecessary code to handle exceptions, opening and
closing database connections etc. But Spring JDBC Framework takes care
of all the low-level details starting from opening the connection,
prepare and execute the SQL statement, process exceptions, handle
transactions and finally close the connection.
Spring - Transaction Management
A database transaction is a sequence of actions that are treated as a
single unit of work. These actions should either complete entirely or
take no effect at all. Transaction management is an important part of
and RDBMS oriented enterprise applications to ensure data integrity and
consistency. The concept of transactions can be described with following
four key properties described as ACID:
Spring - MVC Framework Tutorial
The Spring web MVC framework provides model-view-controller
architecture and ready components that can be used to develop flexible
and loosely coupled web applications. The MVC pattern results in
separating the different aspects of the application (input logic,
business logic, and UI logic), while providing a loose coupling between
these elements.
Spring - Logging with Log4J
This is very easy to use Log4J functionality inside Spring
applications. The following example will take you through simple steps
to explain the simple integration between Log4J and Spring.
Spring Questions and Answers
Spring Questions and Answers has been designed with a special intention of helping students and professionals preparing for various Certification Exams and Job Interviews.
This section provides a useful collection of sample Interview Questions
and Multiple Choice Questions (MCQs) and their answers with
appropriate explanations.
Spring - Quick Guide
Spring is the most popular application development framework for
enterprise Java. Millions of developers around the world use Spring
Framework to create high performing, easily testable, reusable code.
Spring framework is an open source Java platform and it was initially written by Rod Johnson and was first released under the Apache 2.0 license in June 2003.
Spring framework is an open source Java platform and it was initially written by Rod Johnson and was first released under the Apache 2.0 license in June 2003.
Spring - Useful Resources
The following resources contain additional information on Spring. Please use them to get more in-depth knowledge on this topic.
Discuss Spring
Spring framework is an open source Java platform that provides
comprehensive infrastructure support for developing robust Java
applications very easily and very rapidly.
Servlets - Overview
What are Servlets?
Java Servlets are programs that run on a Web or Application server and act as a middle layer between a request coming from a Web browser or other HTTP client and databases or applications on the HTTP server.Servlets - Environment Setup
A development environment is where you would develop your Servlet, test them and finally run them.
Like any other Java program, you need to compile a servlet by using the Java compiler javac and after compilation the servlet application, it would be deployed in a configured environment to test and run.
This development environment setup involves following steps:
Like any other Java program, you need to compile a servlet by using the Java compiler javac and after compilation the servlet application, it would be deployed in a configured environment to test and run.
This development environment setup involves following steps:
Servlets - Life Cycle
A servlet life cycle can be defined as the entire process from its
creation till the destruction. The following are the paths followed by a
servlet
- The servlet is initialized by calling the init () method.
- The servlet calls service() method to process a client's request.
- The servlet is terminated by calling the destroy() method.
Servlets - Examples
Servlets are Java classes which service HTTP requests and implement the javax.servlet.Servlet
interface. Web application developers typically write servlets that
extend javax.servlet.http.HttpServlet, an abstract class that implements
the Servlet interface and is specially designed to handle HTTP
requests.
Servlets - Form Data
You must have come across many situations when you need to pass some
information from your browser to web server and ultimately to your
backend program. The browser uses two methods to pass this information
to web server. These methods are GET Method and POST Method.
Servlets - Client HTTP Request
When a browser requests for a web page, it sends lot of information
to the web server which can not be read directly because this
information travel as a part of header of HTTP request. You can check HTTP Protocol for more information on this.
Servlets - Server HTTP Response
As discussed in previous chapter, when a Web server responds to a
HTTP request to the browser, the response typically consists of a status
line, some response headers, a blank line, and the document. A typical
response looks like this:
Servlets - Http Status Codes
The format of the HTTP request and HTTP response messages are similar and will have following structure:
- An initial status line + CRLF ( Carriage Return + Line Feed ie. New Line )
- Zero or more header lines + CRLF
- A blank line ie. a CRLF
- An optioanl message body like file, query data or query output.
Servlets - Writing Filters
Servlet Filters are Java classes that can be used in Servlet Programming for the following purposes:
- To intercept requests from a client before they access a resource at back end.
- To manipulate responses from server before they are sent back to the client.
Servlets - Exception Handling
When a servlet throws an exception, the web container searches the configurations in web.xml that use the exception-type element for a match with the thrown exception type.
You would have to use the error-page element in web.xml to specify the invocation of servlets in response to certain exceptions or HTTP status codes.
You would have to use the error-page element in web.xml to specify the invocation of servlets in response to certain exceptions or HTTP status codes.
Servlets - Cookies Handling
Cookies are text files stored on the client computer and they are
kept for various information tracking purpose. Java Servlets
transparently supports HTTP cookies.
There are three steps involved in identifying returning users:
There are three steps involved in identifying returning users:
Servlets - Session Tracking
HTTP is a "stateless" protocol which means each time a client
retrieves a Web page, the client opens a separate connection to the Web
server and the server automatically does not keep any record of previous
client request.
Servlets - Database Access
This tutorial assumes you have understanding on how JDBC application
works. Before starting with database access through a servlet, make sure
you have proper JDBC environment setup along with a database.
Servlets - File Uploading
A Servlet can be used with an HTML form tag to allow users to upload
files to the server. An uploaded file could be a text file or image
file or any document.
Servlet - Handling Date
One of the most important advantages of using Servlet is that you can
use most of the methods available in core Java. This tutorial would
take you through Java provided Date class which is available in java.util package, this class encapsulates the current date and time.
Servlets - Page Redirection
Page redirection is generally used when a document moves to a new
location and we need to send the client to this new location or may be
because of load balancing, or for simple randomization.
The simplest way of redirecting a request to another page is using method sendRedirect() of response object. Following is the signature of this method:
The simplest way of redirecting a request to another page is using method sendRedirect() of response object. Following is the signature of this method:
Servlets - Hits Counter
Hit Counter for a Web Page:
Many times you would be interested in knowing total number of hits on a particular page of your website. It is very simple to count these hits using a servlet because the life cycle of a servlet is controlled by the container in which it runs.Servlets - Auto Page Refresh
Consider a webpage which is displaying live game score or stock
market status or currency exchange ration. For all such type of pages,
you would need to refresh your web page regularly using referesh or
reload button with your browser.
Servlets - Sending Email
To send an email using your a Servlet is simple enough but to start with you should have JavaMail API and Java Activation Framework (JAF) installed on your machine.
Servlets - Packaging
The web application structure involving the WEB-INF subdirectory is
standard to all Java web applications and specified by the servlet API
specification. Given a top-level directory name of myapp, Here is what
this directory structure looks like:
Servlets - Debugging
It is always difficult to testing/debugging a servlets. Servlets tend to involve a large amount of client/server interaction, making errors likely but hard to reproduce.
Here are a few hints and suggestions that may aid you in your debugging.
Here are a few hints and suggestions that may aid you in your debugging.
Servlets - Internationalization
Before we proceed, let me explain three important terms:
- Internationalization (i18n): This means enabling a web site to provide different versions of content translated into the visitor's language or nationality.
Servlets Questions and Answers
Servlets Questions and Answers has been designed with a special intention of helping students and professionals preparing for various Certification Exams and Job Interviews. This section provides a useful collection of sample Interview Questions and Multiple Choice Questions (MCQs) and their answers with appropriate explanations.
Servlets - Quick Guide
What are Servlets?
Java Servlets are programs that run on a Web or Application server and act as a middle layer between a request coming from a Web browser or other HTTP client and databases or applications on the HTTP server.Servlets - Useful Resources
The following resources contain additional information on Servlets. Please use them to get more in-depth knowledge on this topic.
Discuss - Servlets
Servlets provide a component-based, platform-independent method for
building Web-based applications, without the performance limitations of
CGI programs. Servlets have access to the entire family of Java APIs,
including the JDBC API to access enterprise databases.
Subscribe to:
Posts (Atom)