当前位置: 首页 > news >正文

个人快速建站深圳seo云哥

个人快速建站,深圳seo云哥,wordpress抽奖插件,4399小游戏在线玩网页版当使用Spring Boot时,我们可以通过拦截器(Interceptor)和监听器(Listener)来实现对请求和响应的处理。拦截器和监听器提供了一种可插拔的机制,用于在请求处理过程中进行自定义操作,例如记录日志…

当使用Spring Boot时,我们可以通过拦截器(Interceptor)和监听器(Listener)来实现对请求和响应的处理。拦截器和监听器提供了一种可插拔的机制,用于在请求处理过程中进行自定义操作,例如记录日志、身份验证、权限检查等。下面通过提供一个示例,展示如何使用拦截器和监听器来记录请求日志。

首先,我们创建一个简单的Spring Boot项目,并添加所需的依赖。在这个示例中,我们将使用Spring Boot Starter Web。

  1. 创建一个Spring Boot项目并添加依赖

创建一个新的Spring Boot项目,可以使用Spring Initializr(https://start.spring.io/)进行初始化。在"Dependencies"中添加"Spring Web"依赖,并生成项目。

  1. 创建拦截器

在项目中创建一个名为 RequestLoggingInterceptor 的类,实现 HandlerInterceptor 接口。这个拦截器将记录请求的URL、HTTP方法和时间戳。

import org.springframework.web.servlet.HandlerInterceptor;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

public class RequestLoggingInterceptor implements HandlerInterceptor {

    @Override
    public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {
        // 记录请求的URL、HTTP方法和时间戳
        System.out.println("RequestLoggingInterceptor"+"启动了");
        System.out.println("Request URL: " + request.getRequestURL());
        System.out.println("HTTP Method: " + request.getMethod());
        System.out.println("Timestamp: " + System.currentTimeMillis());
        return true;
    }
}
  1. 注册拦截器

在Spring Boot应用程序的配置类中,注册拦截器,使其生效。

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.Configuration;
import org.springframework.web.servlet.config.annotation.InterceptorRegistry;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;

@Configuration
public class WebConfig implements WebMvcConfigurer {

    private final RequestLoggingInterceptor requestLoggingInterceptor;

    @Autowired
    public WebConfig(RequestLoggingInterceptor requestLoggingInterceptor) {
        this.requestLoggingInterceptor = requestLoggingInterceptor;
    }

    @Override
    public void addInterceptors(InterceptorRegistry registry) {
        // 注册拦截器
        registry.addInterceptor(requestLoggingInterceptor);
    }
}
  1. 创建监听器

在项目中创建一个名为 RequestListener 的类,实现 ServletRequestListener 接口。这个监听器将在请求的开始和结束时记录日志。

import javax.servlet.ServletRequestEvent;
import javax.servlet.ServletRequestListener;
import javax.servlet.annotation.WebListener;
import javax.servlet.http.HttpServletRequest;

@WebListener
public class RequestListener implements ServletRequestListener {

    @Override
    public void requestInitialized(ServletRequestEvent sre) {
        HttpServletRequest request = (HttpServletRequest) sre.getServletRequest();
        System.out.println("RequestListener"+"启动了");
        // 记录请求的URL、HTTP方法和时间戳
        System.out.println("Request URL: " + request.getRequestURL());
        System.out.println("HTTP Method: " + request.getMethod());
        System.out.println("Timestamp: " + System.currentTimeMillis());
    }

    @Override
    public void requestDestroyed(ServletRequestEvent sre) {
        // 请求处理完成后的操作
        System.out.println("Request processing completed.");
    }
}
  1. 编写控制器

创建一个简单的控制器来模拟请求处理

import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RestController;

@RestController
public class UserController {

    @GetMapping("/user")
    public String getUser() {
        return "Get User";
    }

    @PostMapping("/user")
    public String saveUser(@RequestBody String user) {
        return "Save User: " + user;
    }
}

  1. 在启动类或配置类上添加 @ServletComponentScan 注解

启用对监听器的支持

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.web.servlet.ServletComponentScan;

@SpringBootApplication
@ServletComponentScan
public class HelloWorldApplication {

    public static void main(String[] args) {
        SpringApplication.run(HelloWorldApplication.classargs);
    }
}

  1. 运行应用程序

现在,你可以运行Spring Boot应用程序并访问一些URL,观察控制台输出的日志信息。每次发起请求时,拦截器和监听器都会捕获请求并输出相关的日志。示例效果如下:

alt

本文由 mdnice 多平台发布

http://www.ds6.com.cn/news/104607.html

相关文章:

  • 深圳响应式网站公司杭州哪家seo公司好
  • 动态网站开发语言关键词歌词
  • 分类建站cms系统网站关键词优化怎么弄
  • 中山网站建设文化策划书竞价托管外包费用
  • 永年网站制作seo排名软件免费
  • 网站建设公司被网监大队检查热门搜索关键词
  • 公司网站推广方式湛江今日头条
  • 沈阳网站建设技术公司排名网站免费优化
  • 专业医疗建站关键词优化外包服务
  • wordpress 好的插件网站关键词优化的步骤和过程
  • 建个人网站要花多少钱百度推广电话是多少
  • 如何测试网站的跨浏览器兼容性太原网站制作优化seo公司
  • 广告设计公司经营范围seo整站排名
  • 深圳西乡做网站网络平台销售
  • 个人可以做的外贸网站网站seo标题是什么意思
  • 网站设计方案模板网络营销包括哪些
  • 建立个机密网站北京网站优化策略
  • 购物网站建设报价厦门人才网app
  • 透明房产网温州seo优化公司
  • 做pc端网站怎么样怎样建立一个网站
  • 能不能上传网站再备案seo搜索引擎优化到底是什么
  • 优秀的个人网站网站优化人员通常会将目标关键词放在网站首页中的
  • 做二手车的网站有哪些网络营销中的seo与sem
  • 如何做网站监控怎么自己做网址
  • 网站的图片滚动怎么做b站推广网站入口2023是什么
  • 学做效果图的网站恶意点击竞价是用的什么软件
  • 南通通州建设工程质量监督网站企业营销培训课程
  • 企业案例网站生成百度小说搜索风云榜总榜
  • 高端网站制作的公司114啦网址导航官网
  • 做海报找背景图有哪些网站免费发布广告