标签:执行 map mini ram contex spring initial 调用 admin
1自定义监听器Listener
常用的监听器包含三种,分别是servletContextListener、httpSessionListener、ServletRequestListener
servletContextListener 启动应用的时候就会调用
1.1ServletRequestListener
首先,先建立listener包,之后在其中新建一个RequestListener,引用ServletRequestListener中的方法requestDestroyed和requestInitialized
数据结构
RequestListener的代码:
package com.example.demo.listener;
import javax.servlet.ServletRequestEvent;
import javax.servlet.ServletRequestListener;
import javax.servlet.annotation.WebListener;
@WebListener
public class RequestListener implements ServletRequestListener {
@Override
public void requestDestroyed(ServletRequestEvent sre) {
System.out.println("-----------requestDestroyed--------------");
}
@Override
public void requestInitialized(ServletRequestEvent sre) {
System.out.println("-----------requestInitialized-------------");
}
}
然后通过studyController中的方法进行访问
/**
* servlet的请求方式
* 访问地址:http://localhost:8080/v1/servletTest?id=9
* @param request
* @return
*/
@GetMapping("/v1/servletTest")
public Object servletTest(HttpServletRequest request) {
params.clear();
String id=request.getParameter("id");
System.out.println("Controller 处理中");
params.put("id", id);
return params;
}
之后run application ,访问接口地址:http://localhost:8080/v1/servletTest?id=9,可以查看控制台结果执行的顺序
2ContextListener
结构
代码:
package com.example.demo.listener;
import javax.servlet.ServletContextEvent;
import javax.servlet.ServletContextListener;
import javax.servlet.annotation.WebListener;
/**
* 主要用来做统计
* @author Administrator
*
*/
@WebListener
public class ContextListener implements ServletContextListener {
@Override
public void contextDestroyed(ServletContextEvent sre) {
System.out.println("-----------contextDestroyed--------------");
}
@Override
public void contextInitialized(ServletContextEvent sre) {
System.out.println("-----------contextInitialized-------------");
}
}
之后run as application,在控制台中能看见对应的信息
springboot拦截器之自定义监听器listener(三)
标签:执行 map mini ram contex spring initial 调用 admin
原文地址:https://www.cnblogs.com/zhushilai/p/13559869.html