资讯专栏INFORMATION COLUMN

SpringMVC中资源文件的处理

CrazyCodes / 3281人阅读

摘要:但资源文件的请求也会被转至中处理,可通过如下配置查看效果注意中的后面有两个号,表示所有目录及子目录的路径。这样,在中多带带访问某个资源文件,可以看到该请求被转到方法中处理了。

在Spring框架中,所有的请求都可通过Spring转发器(Dispatcher)拦截,然后转到Controller层处理,但是有些资源文件的访问(比如图片、JS、CSS等文件)不需要经过Controller处理,这种情况如果处理?

使用Spring框架时,一般在web.xml中配置Spring的Servlet转发器,拦截前端请求以转交给Spring的Controller层处理。比如:
配置URL规则:

   
    springmvc   
    /

配置转发器对应的class:

   
    springmvc   
    org.springframework.web.servlet.DispatcherServlet   
              
            contextConfigLocation      
            classpath:applicationContext-mvc.xml   
           
    1   
    true

上述配置好后,前端的所有请求,包含资源文件,都会转至Controller层处理,然后通过@RequestMapping来映射具体的处理方法。

但资源文件的请求也会被转至Controller中处理,可通过如下配置查看效果:

@RequestMapping(value = "/**", method = RequestMethod.GET)
public String index() {

注意:value中的/后面有两个*号,表示所有目录及子目录的路径。
这样,在URL中多带带访问某个资源文件,可以看到该请求被转到index方法中处理了。

那如何解决这个问题呢?比如有下面的HTML,请求了js资源:



    
        
    Title    
    


    

Hello

注意:使用结尾,而不是直接

阅读需要支付1元查看
<