浏览器参数FilterConfig?=null



为什么当我在url地址中输入以下内容时,参数值为空?http://192.168.0.38:8080 demo-rest//SimpleServlet ? example-param =房地美

21-02-14 19:39:56:567 INFO default task-1 stdout:71 - Test Param null

21-02-14 19:39:56:568 INFO default task-1 example。SimpleHttpServlet:29 - SimpleServlet::构造函数21-02-14 19:39:56:568 INFO default task-1 example。SimpleServlet::init()21-02-14 19:39:56:569 INFO default task-1 stdout:71 - IP 192.168.0.38时间为星期日2月14日19:39:56 GMT 202121-02-14 19:39:56:569 INFO default task-1 example。SimpleHttpServlet:47 - SimpleServlet::doGet

@WebFilter("/*")公共类LoggingFilter实现过滤器{

@Override
public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain)
throws IOException, ServletException {
// Log the IP address and get the current time stamp.       
String ipAddress = request.getRemoteAddr();
System.out.println("IP "+ ipAddress + " Time is " + new Date().toString());
chain.doFilter(request, response);      
}
public void init(FilterConfig config) throws ServletException {

// Get init Parameter
String testParam = config.getInitParameter("example-param");
// print the init Parameter
System.out.println("Test Param " + testParam);              
}
public void Destroy() {
// release any resource
}

}

我已经对它进行了排序,但我想知道如果不使用web.xml 00:18:38,639 21-02-15 00:18:53:800 INFO默认任务-1示例是否可以完成。LoggingFilter:29 - Test Param Freddy - RocknRolla 12 secs ago编辑删除

我发现,如果您使用web.xml存储初始参数,则接口javax.servlet.Filter的具体类的对象被调用两次。您的代码将运行两次,一次选择初始参数值,第二次为空。但是如果你为webinitparams使用注解,那么对象方法只会被调用一次。奇怪但却是真的。

@WebFilter(filterName = "filterSimpleServlet";urlpattern ={"/SimpleServlet"},initParams ={@WebInitParam(name = "mood" value = "awake"})

相关内容

  • 没有找到相关文章

最新更新