SlideShare a Scribd company logo
Java/J2EE Programming Training
Java Filters
Page 2Classification: Restricted
Agenda
• Filter API
• Configuring filter
• DISPATCHER
Page 3Classification: Restricted
Page 4Classification: Restricted
Login
update
Login
add
Login
delete
CROSSCUTTING
CONCERNS
Page 5Classification: Restricted
Login
updat
e
Login
add
Login
delete
CROSSCUTTING
CONCERNS
L
O
G
I
N
Page 6Classification: Restricted
Authori
ze
updat
e
add
Authori
ze
delete
CROSSCUTTIN
G CONCERNS
l
o
g
g
i
n
g
a
u
t
h
e
n
ti
c
a
ti
o
n
Page 7Classification: Restricted
Filter API
Page 8Classification: Restricted
public class LoggingFilter implements Filter{
@Override
public void init(FilterConfig filterConfig) throws ServletException {
System.out.println("init method");
}
@Override
public void doFilter(ServletRequest request, ServletResponse
response, FilterChain chain) throws IOException, ServletException {
System.out.println("before dispatching request to servlet");
chain.doFilter(request, response);
System.out.println("After dispatching response from servlet");
}
@Override
public void destroy() {
System.out.println("Clean up resources");
}
}
Page 9Classification: Restricted
public class LoggingFilter implements Filter{
@Override
public void init(FilterConfig filterConfig) throws ServletException {
System.out.println("init method");
}
@Override
public void doFilter(ServletRequest request, ServletResponse response, FilterChain
chain) throws IOException, ServletException {
System.out.println("before dispatching request to servlet");
chain.doFilter(request, response);
System.out.println("After dispatching response from servlet");
}
@Override
public void destroy() {
System.out.println("Clean up resources");
}
}
Page 10Classification: Restricted
Configuring filter
<filter>
<description>filter to log incoming request</description>
<filter-name>logFilter</filter-name>
<filter-class>com.example.filters.LoggingFilter</filter-class>
</filter>
URL PATTERN
<filter-mapping>
<filter-name>logFilter</filter-
name>
<url-pattern>/</url-pattern>
</filter-mapping>
SERVLET NAME
<filter-mapping>
<filter-name>logFilter</filter-name>
<servlet-name>TestServlet</servlet-
name>
</filter-mapping>
Page 11Classification: Restricted
Configuring filter
<filter>
<description>filter to log incoming request</description>
<filter-name>logFilter</filter-name>
<filter-class>com.example.filters.LoggingFilter</filter-class>
</filter>
URL PATTERN
<filter-mapping>
<filter-name>logFilter</filter-name>
<url-pattern>/</url-pattern>
</filter-mapping>
SERVLET NAME
<filter-mapping>
<filter-name>logFilter</filter-name>
<servlet-name>TestServlet</servlet-
name>
</filter-mapping>
Page 12Classification: Restricted
<servlet-mapping>
<servlet-name>UpdateAccounts</servlet-name>
<url-pattern>*.do</url-pattern>
</servlet-mapping>
<filter-mapping>
<filter-name>authenticationFilter</filter-name>
<servlet-name>UpdateAccounts</servlet-name>
</filter-mapping>
<filter-mapping>
<filter-name>Authorization</filter-name>
<servlet-name>UpdateAccounts</servlet-name>
</filter-mapping>
<filter-mapping>
<filter-name>logFilter</filter-name>
<url-pattern>/</url-pattern>
</filter-mapping>
1
2
3
Page 13Classification: Restricted
DISPATCHER
RequestDispatcher rd =request.getRequestDispatcher(“UpdateAccounts”);
rd.forward( request, response );
• <filter-mapping>
• <filter-name>authenticationFilter</filter-name>
• <servlet-name>UpdateAccounts</servlet-name>
• <dispatcher>FORWARD</dispatcher>
• </filter-mapping>
Page 14Classification: Restricted
Login
updat
e
Login
add
Login
delete
CROSSCUTTING
CONCERNS
L
O
G
G
I
N
G
<filter-mapping>
<filter-name>loggingFilter</filter-name>
<servlet-name>UpdateAccounts</servlet-
name>
<dispatcher>REQUEST</dispatcher>
</filter-mapping>
Page 15Classification: Restricted
update
Accounts
A
U
T
H
O
R
I
Z
E
<filter-mapping>
<filter-name>audit</filter-name>
<servlet-
name>UpdateAccounts</servlet-name>
<dispatcher>INCLUDE</dispatcher>
</filter-mapping>
admin
RequestDispatcher rd
=request.getRequestDispatcher(“UpdateAccount”);
rd.include ( request,response );
update
Accounts
A
U
T
H
O
R
I
Z
E
<filter-mapping>
<filter-name>audit</filter-name>
<servlet-name>UpdateAccounts</servlet-name>
<dispatcher>FORWARD</dispatcher>
</filter-mapping>
admin
RequestDispatcher rd =request.getRequestDispatcher(“UpdateAccount”);
rd.forward( request,response );
Page 17Classification: Restricted
update
Accounts
A
U
T
H
I
R
I
Z
E
<filter-mapping>
<filter-name>audit</filter-name>
<servlet-
name>UpdateAccounts</servlet-name>
<dispatcher>ERROR</dispatcher>
</filter-mapping>
admin
RequestDispatcher rd
=request.getRequestDispatcher(“UpdateAccount”);
rd.forward( request,response );
Page 18Classification: Restricted
Thank You

More Related Content

PDF
Servlet Filter
PPTX
Advanced java programming
PPTX
Filter
PPTX
Filter
PPTX
Advance java session 17
PPTX
Java While Loop
PPTX
Java Webservices
PPTX
Java Type Casting
Servlet Filter
Advanced java programming
Filter
Filter
Advance java session 17
Java While Loop
Java Webservices
Java Type Casting

More from AathikaJava (14)

PPTX
Spring Web MVC
PPTX
Java Session
PPTX
Java Servlet Lifecycle
PPTX
Java Rest
PPTX
Java Request Dispatcher
PPTX
Java Polymorphism Part 2
PPTX
Java MVC
PPTX
Java Polymorphism
PPTX
Java Spring
PPTX
Mapping Classes with Relational Databases
PPTX
Introduction to Java
PPTX
Java Encapsulation and Inheritance
PPT
Hibernate basics
PPTX
Encapsulation
Spring Web MVC
Java Session
Java Servlet Lifecycle
Java Rest
Java Request Dispatcher
Java Polymorphism Part 2
Java MVC
Java Polymorphism
Java Spring
Mapping Classes with Relational Databases
Introduction to Java
Java Encapsulation and Inheritance
Hibernate basics
Encapsulation
Ad

Recently uploaded (20)

PDF
Spectral efficient network and resource selection model in 5G networks
PDF
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
PDF
Reach Out and Touch Someone: Haptics and Empathic Computing
PDF
Unlocking AI with Model Context Protocol (MCP)
PDF
Per capita expenditure prediction using model stacking based on satellite ima...
PDF
A comparative analysis of optical character recognition models for extracting...
PDF
Mobile App Security Testing_ A Comprehensive Guide.pdf
PDF
gpt5_lecture_notes_comprehensive_20250812015547.pdf
PDF
Assigned Numbers - 2025 - Bluetooth® Document
DOCX
The AUB Centre for AI in Media Proposal.docx
PPTX
A Presentation on Artificial Intelligence
PDF
TokAI - TikTok AI Agent : The First AI Application That Analyzes 10,000+ Vira...
PPTX
sap open course for s4hana steps from ECC to s4
PDF
Machine learning based COVID-19 study performance prediction
PPTX
ACSFv1EN-58255 AWS Academy Cloud Security Foundations.pptx
PPTX
Cloud computing and distributed systems.
PDF
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
PPTX
Programs and apps: productivity, graphics, security and other tools
PDF
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
PDF
Diabetes mellitus diagnosis method based random forest with bat algorithm
Spectral efficient network and resource selection model in 5G networks
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
Reach Out and Touch Someone: Haptics and Empathic Computing
Unlocking AI with Model Context Protocol (MCP)
Per capita expenditure prediction using model stacking based on satellite ima...
A comparative analysis of optical character recognition models for extracting...
Mobile App Security Testing_ A Comprehensive Guide.pdf
gpt5_lecture_notes_comprehensive_20250812015547.pdf
Assigned Numbers - 2025 - Bluetooth® Document
The AUB Centre for AI in Media Proposal.docx
A Presentation on Artificial Intelligence
TokAI - TikTok AI Agent : The First AI Application That Analyzes 10,000+ Vira...
sap open course for s4hana steps from ECC to s4
Machine learning based COVID-19 study performance prediction
ACSFv1EN-58255 AWS Academy Cloud Security Foundations.pptx
Cloud computing and distributed systems.
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
Programs and apps: productivity, graphics, security and other tools
Blue Purple Modern Animated Computer Science Presentation.pdf.pdf
Diabetes mellitus diagnosis method based random forest with bat algorithm
Ad

Java Filters