Home PC Games Linux Windows Database Network Programming Server Mobile  
           
  Home \ Programming \ SpringMVC the use of interceptors     - Redis-2.8.17 installation and configuration process some errors (Linux)

- How to compare PDF files on Ubuntu (Linux)

- JDK comes with tools JPS (Linux)

- Linux, security encryption to transfer files between machines (Linux)

- Java Virtual Machine class loading mechanism and bytecode execution engine (Programming)

- Drawing from the Android source code analysis View (Programming)

- Binary search is really easy as you think you do (Programming)

- Switching Virtual Machine + Ubuntu graphical interface and terminal interface (Linux)

- Examples 14 grep command (Linux)

- A step by step teach have to install multi-node cluster configuration Hadoop (Server)

- CentOS / Debian configuration Gitlab 7.1x to build self Git repository (Linux)

- Intrusion prevention network server security maintenance tips (Linux)

- Oracle metadata Reconstruction experiments (Database)

- Java inner classes (Programming)

- CentOS 6.5 makes the LAN http source (Linux)

- Git uses a small mind (Linux)

- Grading defense against Linux server attacks (Linux)

- How do you change the default browser and Email Client in Ubuntu (Linux)

- How nodeclub constructed Docker image (Server)

- Linux how to handle file names that contain spaces and special characters (Linux)

 
         
  SpringMVC the use of interceptors
     
  Add Date : 2018-11-21      
         
         
         
  What is the interceptor

Interceptor generally refers generally by intercepting some requests from the browser to the server to complete some of the features section of code
Usually before a request occurs, the event, after a request we can intercept
What can be done interceptor

Interceptor can be used to verify permissions, to solve the garbage, logging operations, performance monitoring, exception handling, etc.

Custom interceptors

By inheritance Spring framework HandlerInterceptorAdapter class, then override preHandle, postHandle, afterCompletion three methods, in order to write our own business logic code implemented in three methods.

/ **
 * Custom interceptors
 * /
public class MyInterceptor extends HandlerInterceptorAdapter {
 / **
  * Before requesting execution
  * @param Request
  * @param Response
  * @param Handler indicates that the request is intercepted target
  * @return False: intercepting a request termination request true: to continue execution of the request
  * /
 @Override
 public boolean preHandle (HttpServletRequest request, HttpServletResponse response,
        Object handler) throws Exception {
  // Business logic code to write ... (such as: solve the garbage, the privilege verifier)
  request.setCharacterEncoding ( "utf-8");
  return true;
 }
 
 / **
  * @param ModelAndView view can be operated
  * /
 @Override
 public void postHandle (HttpServletRequest request, HttpServletResponse response,
       Object handler, ModelAndView modelAndView) throws Exception {
  // Business logic code to write ... (eg: Operation logging, change the view information)
 }
 
 / **
  * @param Ex abnormalities
  * /
 @Override
 public void afterCompletion (HttpServletRequest request, HttpServletResponse response,
        Object handler, Exception ex) throws Exception {
  // Business logic code to write ... (such as: resource destruction, exception handling)
 }
}

a) public boolean preHandle (HttpServletRequest request, HttpServletResponse response,
Object handler) throws Exception
The method of doing before action can be achieved pretreatment data, such as: coding, anti resubmit security control.
If the method returns true, then proceed to action. Return false then intercepts the request

b) public void postHandle (HttpServletRequest request, HttpServletResponse response,
Object handler, ModelAndView modelAndView) throws Exception
The method in the action execution, before generating execution view. Here we have the opportunity to modify the view layer data.

c) public void afterCompletion (HttpServletRequest request, HttpServletResponse response, Object handler, Exception ex) throws Exception
Final performance, typically for releasing resources to handle exceptions. We can is empty according to ex, related to exception handling.

Register interceptor

In the xml configuration file:

 < Mvc: interceptors>
  < Bean id = "myInterceptor" class = "com.admol.web.MyInterceptor" />
< / Mvc: interceptors>

When there are multiple interceptors when you can write multiple bean
When we want to intercept some of the designated request:

 < Mvc: interceptors>
      < -! Path: the need to intercept the request, it will intercept all requests not write ->
  < Mvc: mapping path = ". / * Htm" />
  < Bean id = "myInterceptor" class = "com.admol.web.MyInterceptor" />
< / Mvc: interceptors>

A plurality of interceptors

xml configuration:

 < Mvc: interceptors>
  < Bean id = "myInterceptor" class = "com.admol.web.MyInterceptor" />
  < Bean id = "myInterceptor2" class = "com.admol.web.MyInterceptor2" />
< / Mvc: interceptors>

When configured with a plurality of interceptors, will perform preHandle method according to the order of interceptors, then reverse and perform postHandle afterCompletion methods.

Other implementations
1. Implement the interface implements HandlerInterceptor
2. implement the interface implements WebRequestInterceptor
Sign interceptor method unchanged

The difference between the filter

1. The filter is dependent on the Servlet container, based on the callback function, Intercepto dependent on the frame, based on reflection
2. The larger filter filter range, you can also filter some static resources interceptor intercepts requests
     
         
         
         
  More:      
 
- Fedora 20, Fedora 19, CentOS 6 and RHEL6 users how to install Wine 1.7.15 (Linux)
- History and Statistics tuptime use tools to view Linux server system boot time (Server)
- Oracle Linux 6.4 installed Oracle 11gR2 + RAC + ASM (Database)
- CentOS yum source configuration (Linux)
- Linux process group, session daemon (Linux)
- ApacheDS configuration of users and user groups to achieve SSO (Server)
- The top command under Linux (Linux)
- VirtualBox modify the size of the virtual machine disk VDI (Linux)
- Hard disk encryption to protect data security (Linux)
- Zabbix installation under Linux (Server)
- Five useful commands to manage file types and system time in linux (Linux)
- CentOS 5.8 (64) Python 2.7.5 installation error resolved (Linux)
- Recover Ubuntu 14.04 wakes up from standby in case mouse keyboard appears dead (Linux)
- Help you make Git Bisect (Linux)
- Oracle 11g dataguard main library backup and recovery to the test environment in one database error (Database)
- LNMP Note: Addressing mail function can not send mail (Server)
- Linux file compression and file system packaged with instructions (Linux)
- Ubuntu 13.04 configure MyEclipse 10.7 Environment (Linux)
- linux raid levels and concepts introduced (Linux)
- Git uses a small mind (Linux)
     
           
     
  CopyRight 2002-2022 newfreesoft.com, All Rights Reserved.