国产片侵犯亲女视频播放_亚洲精品二区_在线免费国产视频_欧美精品一区二区三区在线_少妇久久久_在线观看av不卡

服務(wù)器之家:專注于服務(wù)器技術(shù)及軟件下載分享
分類導(dǎo)航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術(shù)|正則表達(dá)式|C/C++|IOS|C#|Swift|Android|VB|R語(yǔ)言|JavaScript|易語(yǔ)言|vb.net|

服務(wù)器之家 - 編程語(yǔ)言 - Java教程 - 詳解SpringMVC中設(shè)置靜態(tài)資源不被攔截的問(wèn)題

詳解SpringMVC中設(shè)置靜態(tài)資源不被攔截的問(wèn)題

2020-08-02 12:03杜sir2010 Java教程

這篇文章主要介紹了詳解SpringMVC中設(shè)置靜態(tài)資源不被攔截的問(wèn)題,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧

這兩天使用SpringMVC來(lái)做登錄,注冊(cè)的小demo,其中用到了springmvc攔截器對(duì)登錄操作進(jìn)行攔截處理,并對(duì)url進(jìn)行驗(yàn)證。驗(yàn)證通過(guò)則可以進(jìn)行handler的處理,如果驗(yàn)證不通過(guò)直接跳回或者重定向到指定的頁(yè)面。

但是在做這個(gè)操作的時(shí)候,遇到很大的一個(gè)問(wèn)題就是項(xiàng)目demo中的靜態(tài)資源都會(huì)在每次請(qǐng)求中被攔截處理了!跳回頁(yè)面的時(shí)候,頁(yè)面就不再是想想中的呈現(xiàn)的樣子了。

以為我在springmvc.xml中已經(jīng)配置了攔截器和靜態(tài)資源的配置卻還是出現(xiàn)這樣的結(jié)果,所以就又是看前段瀏覽器的設(shè)置,又是看css文件,js文件。最后才鎖定目標(biāo)是靜態(tài)資源的問(wèn)題,直接在web.xml中使用defaultServlet的方式才解決問(wèn)題。

下面是我的攔截器代碼:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
@Override
public boolean preHandle(HttpServletRequest request,
  HttpServletResponse response, Object handler) throws Exception {
 String url=request.getRequestURI();
 System.out.println(url);
 String method=request.getMethod();
  //判斷是否在做登錄操作
 if(url.indexOf("/login")>=0&&method.equalsIgnoreCase("post")){
   return true;
 }
    //判斷是否在做注冊(cè)操作
    if(url.indexOf("/toAddUserPage")>=0){
  return true;
 }
  //如果時(shí)登錄用戶則可以進(jìn)行下一步操作 返回true
 HttpSession session=request.getSession();
 User user=(User) session.getAttribute("user");
 if(user!=null){
       //登錄之后不能使用登錄操作和注冊(cè)操作
       if(url.indexOf("/toLogin")>=0||url.indexOf("/toAddUserPage")>=0){
   request.getRequestDispatcher("/WEB-INF/jsp/index.jsp").forward(request, response);
   return false;
  }
  return true;
 }
 //其他操作直接返回到登錄頁(yè)面
 request.getRequestDispatcher("/WEB-INF/jsp/user/login.jsp").forward(request, response);
 return false;
}

下面是我的springmvc的配置:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
<!-- 可以掃描controller、service、這里讓掃描controller,指定controller的包 -->
 <context:component-scan base-package="com.ipro.shopping.controller"/>
  <!-- 使用 注解驅(qū)動(dòng)可以加載處理器適配器和處理器映射以及json解釋器不用單獨(dú)再添加處理器適配器和核處理器映射的配置 -->
 <mvc:annotation-driven conversion-service="conversionService"></mvc:annotation-driven>
  
 <!-- 靜態(tài)資源解析包括 :js、css、img、 -->
 <!-- <MVC:RESOURCES LOCATION="/" MAPPING="**.HTML"/>
 <MVC:RESOURCES LOCATION="/" MAPPING="**.JS"/>
 <MVC:RESOURCES LOCATION="/" MAPPING="**.CSS"/>
 <MVC:RESOURCES LOCATION="/" MAPPING="**.PNG"/>
 <MVC:RESOURCES LOCATION="/" MAPPING="**.GIF"/>
 <MVC:RESOURCES LOCATION="/" MAPPING="**.JPG"/> -->
  
 <!-- 配置攔截器 -->
 <mvc:interceptors>
  <mvc:interceptor>
   <mvc:mapping path="/**"/>
   <bean class="com.ipro.shopping.interceptor.LoginInterceptor"></bean>
  </mvc:interceptor>
 </mvc:interceptors>

我把所有的靜態(tài)資源都設(shè)置成怎樣的形式,可結(jié)果還是無(wú)法返回正確的答案。

下面是配置web.xml之后的文件:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
<servlet-mapping>
  <servlet-name>default</servlet-name>
  <url-pattern>*.jpg</url-pattern>
 </servlet-mapping>
 <servlet-mapping>
  <servlet-name>default</servlet-name>
  <url-pattern>*.gif</url-pattern>
 </servlet-mapping>
 <servlet-mapping>
  <servlet-name>default</servlet-name>
  <url-pattern>*.js</url-pattern>
 </servlet-mapping>
 <servlet-mapping>
  <servlet-name>default</servlet-name>
  <url-pattern>*.css</url-pattern>
 </servlet-mapping>
 <servlet-mapping>
  <servlet-name>default</servlet-name>
  <url-pattern>*.png</url-pattern>
 </servlet-mapping>
  
 <!-- springmvc前端控制器 -->
 <servlet>
  <servlet-name>springmvc</servlet-name>
  <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
  <!-- contextConfigLocation配置springmvc加載的配置文件 (配置處理器映射器、適配器等等) 如果不配置contextConfigLocation,
   默認(rèn)加載的是/WEB-INF/servlet名稱-serlvet.xml(springmvc-servlet.xml) -->
  <init-param>
   <param-name>contextConfigLocation</param-name>
   <param-value>classpath:springmvc.xml</param-value>
  </init-param>
 </servlet>

注意的是我們配置defaultServlet一定要配置到springmvc的前端控制器(DispatcherServlet)前面才會(huì)生效。

上面是我在做登錄驗(yàn)證的時(shí)候用到的,僅供參考。目前這個(gè)問(wèn)題只做了一種方案,網(wǎng)上說(shuō)的有三種可以解決的方案,第一種就是我上面提到的這種

第二種就是在springmvc中配置的方式,只不過(guò)我配置的沒(méi)有成功。另外一種就是也是使用defaultServlet使用注解的方式配置。

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持服務(wù)器之家。

原文鏈接:http://blog.csdn.net/dukangcheng/article/details/50823625?locationNum=9&fps=1

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 欧美黄视频 | 一级国产免费 | 成人午夜性a一级毛片免费看 | 久久综合九色综合欧美狠狠 | 视频在线一区二区 | 最近的中文字幕在线看视频 | 五月天色婷婷视频 | 黄色av网站在线观看 | 久久福利 | 久久亚洲综合 | 亚洲成人午夜电影 | 亚洲高清一区二区三区 | 日韩不卡一区二区三区 | 亚洲精品在线视频 | 亚洲成人第一 | av黄色网| 欧美日韩三级 | 国产一区二区三区撒尿在线 | 人人澡人人射 | 91性高湖久久久久久久久网站 | 亚洲一区二区中文 | 欧美freesex交免费视频 | 亚洲精品福利在线 | 欧美一区二区三区电影 | 91精品国产一区二区 | 精品国产精品三级精品av网址 | 亚洲国产精品一区二区三区 | 精品一区二区免费视频 | 99精品欧美一区二区三区综合在线 | 国产三级久久久久 | 中文字幕国产 | 免费一级片视频 | 毛片国产| 福利视频网 | 国产超碰人人爽人人做人人爱 | 日韩精品一区二区三区av | 欧美久久久久久久久久久 | 亚洲男人第一天堂 | 久久久久久一区 | 日韩午夜av| 亚洲国产精品一区在线 |