springboot整合filter

摘要:
创建新项目,创建新的Firstfilter类Firstfliter.javapackagecom.example。滤器importjava.io。IOException;importjavax.servlet。滤器importjavax.servlet。过滤链;importjavax.servlet。过滤器配置;importjavax.servlet。

新建一个项目

springboot整合filter第1张

springboot整合filter第2张

 springboot整合filter第3张

 springboot整合filter第4张

 springboot整合filter第5张

新建Firstfilter类

springboot整合filter第6张

 springboot整合filter第7张

Firstfliter.java

package com.example.filter;

import java.io.IOException;

import javax.servlet.Filter;
import javax.servlet.FilterChain;
import javax.servlet.FilterConfig;
import javax.servlet.ServletException;
import javax.servlet.ServletRequest;
import javax.servlet.ServletResponse;
import javax.servlet.annotation.WebFilter;


/**
 *SpringBoot 整合 Filter 方式一
 *<filter>
 * <filter-name>FirstFilter</filter-name>
 * <filter-class>com.bjsxt.filter.FirstFilter</filter-class>
 *</filter>
 *<filter-mapping>
 * <filter-name>FirstFilter</filter-name>
 * <url-pattern>/first</url-pattern>
 *</filter-mapping>
 */
@WebFilter(filterName = "Firstfilter",urlPatterns = "/first")
public class Firstfilter implements Filter{
    @Override
    public void destroy() {

    }
    @Override
    public void doFilter(ServletRequest arg0, ServletResponse arg1, FilterChain arg2)
            throws IOException, ServletException {
        System.out.println("进入 Filter");
        arg2.doFilter(arg0, arg1);
        System.out.println("离开 Filter");
    }

    @Override
    public void init(FilterConfig arg0) throws ServletException {

    }
}

 新建servlet包,同时在包内新建FirstServlet类

springboot整合filter第8张

FirstServlet.java类

package com.example.servlet;

import java.io.IOException;

import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;


/**
 *SpringBoot整合Servlet方式一
 *
 *<servlet>
 *    <servlet-name>FirstServlet</servlet-name>
 *    <servlet-class>com.bjsxt.servlet.FirstServlet</servlet-class>
 *</servlet>
 *
 *<servlet-mapping>
 * <servlet-name>FirstServlet</servlet-name>
 * <url-pattern>/first</url-pattern>
 *</servlet-mapping>
 *
 */

@WebServlet(name="FirstServlet",urlPatterns="/first")
public class FirstServlet extends HttpServlet {

    @Override
    protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        System.out.println("FirstServlet............");
    }
}

新建一个App.java启动类

springboot整合filter第9张

 springboot整合filter第10张

App.java类

package com.example;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.web.servlet.ServletComponentScan;
/**
 *SpringBoot 整合 Filter 方式一
 *
 */
@SpringBootApplication
@ServletComponentScan
public class App {
  public static void main(String[] args)
  {
      SpringApplication.run(App.class,args);
  }

}

运行启动类

springboot整合filter第11张

 springboot整合filter第12张

 在浏览器运行

springboot整合filter第13张

在终端打印出

springboot整合filter第14张

 现在用第二种方式整合filter

 新建SecndFilter类

springboot整合filter第15张

springboot整合filter第16张

 新建SecndServlet类

springboot整合filter第17张

SecondServlet.java

package com.example.servlet;

import java.io.IOException;

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

/**
 *SpringBoot整合Servlet方式二
 *
 */

public class SecondServlet extends HttpServlet {

    @Override
    protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        System.out.println("SecondServlet..........");
    }
    
}

新建启动类App2.java

springboot整合filter第18张

 App2.java类

package com.example;

import com.example.filter.SecondFilter;
import com.example.servlet.SecondServlet;
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.boot.web.servlet.FilterRegistrationBean;
import org.springframework.boot.web.servlet.ServletRegistrationBean;
import org.springframework.context.annotation.Bean;

/**
 * SpringBoot 整合 Filter 方式二
 * * *
 */
@SpringBootApplication
public class App2 {
    public  static void main(String[] args){
        SpringApplication.run(App2.class,args);
    }

    /**
     * 注册 Servlet
     * @return
     */
    @Bean
    public ServletRegistrationBean getServletRegistrationBean(){
        ServletRegistrationBean bean = new ServletRegistrationBean(new SecondServlet());
        bean.addUrlMappings("/second");
        return bean;
    }
    
    /**
     * 注册 Filter
    */
 @Bean

public FilterRegistrationBean getFilterRegistrationBean() { FilterRegistrationBean bean = new FilterRegistrationBean(new SecondFilter()); //bean.addUrlPatterns(new String[]{"*.do","*.jsp"}); bean.addUrlPatterns("/second"); return bean; } }

 运行App2.java类

springboot整合filter第19张

 springboot整合filter第20张

 在浏览器输入

springboot整合filter第21张

可以看到终端打印出的结果

 springboot整合filter第22张

免责声明:文章转载自《springboot整合filter》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇Linux配置Mysql的主备搭建有关TensorBoard一些小Tip和实例下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

pageoffice

一、选择文件打开 1.postup.exe安装 2.导入jar包:pageoffice.jar 理论上不需要印章功能下面两个不需要导入,我只用到了第一个jar包,用于导出word文档在线编辑并保存. 3.再web.xml中添加下面代码: <!-- PageOffice Begin --> <servlet>...

servlet过滤器1 解决字符集乱码 filter

package com.tarena.web.filter;    import java.io.IOException;    import javax.servlet.Filter;import javax.servlet.FilterChain;import javax.servlet.FilterConfig;import javax.servl...

普通Java类获取spring 容器的bean的5种方法

本文转载自:http://www.cnblogs.com/duanxz/archive/2014/06/18/3794075.html 方法一:在初始化时保存ApplicationContext对象方法二:通过Spring提供的工具类获取ApplicationContext对象方法三:继承自抽象类ApplicationObjectSupport方法四:继承...

在Tomcat服务器中启动SpringBoot项目原理(简化版)

总的来说,tomcat方式启动WAR包项目, tomcat会查询context上下文中实现ServletContainerInitializer接口的类,然后调用类的onStartup(Set<Class<?>> c, ServletContext ctx)方法 Spring的SpringServletContainerInitia...

java部署web service的方式

部署web service的方式一般有两种: 1. 编写java源文件,将文件的java后缀改为jws,然后部署到webapps/axis目录下,axia引擎可以直接执行源文件中定义的java方法为web service;另外,要让你的web应用服务器识别jws文件需要确定已在web.xml中配置servlet(如果你依照本文方法采用拷贝axis目录为工...

Jackson 框架JSON、XML、List、Map直接相互转换

博客分类:   json   参考:http://www.cnblogs.com/hoojo/archive/2011/04/22/2024628.html 在其基础上做了稍微调整 详情见附件 jackson API文档:http://tool.oschina.net/apidocs/apidoc?api=jackson-1.9.9 Jacks...