SpringMVC第一個例子,靜態資源過濾的三種方式
阿新 • • 發佈:2019-01-01
- web.xml
<?xml version="1.0" encoding="UTF-8"?> <web-app version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"> <welcome-file-list> <welcome-file>index.jsp</welcome-file> </welcome-file-list> <!-- 中央控制器 --> <!-- 配控制器時,一定要匯入commons-logging包,否則tomcat啟動時出現Failed to start component --> <servlet> <servlet-name>springMVC</servlet-name> <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> <load-on-startup>0</load-on-startup> </servlet> <servlet-mapping> <servlet-name>springMVC</servlet-name> <url-pattern>/</url-pattern><!-- /*攔截所有 /除了jsp都攔截 --> </servlet-mapping> <!-- 過濾靜態資源,方式一:不攔截html檔案 --><!-- <servlet-mapping> <servlet-name>default</servlet-name> <url-pattern>*.html</url-pattern> </servlet-mapping>--> </web-app>
- springMVC-servlet
<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:mvc="http://www.springframework.org/schema/mvc" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.2.xsd http://www.springframework.org/schema/mvc http://www.springframework.org/schema/mvc/spring-mvc-3.2.xsd "> <!-- 對映 --> <bean name="/hello.do" class="com.controller.HelloController"></bean> <bean name="/hello2.do" class="com.controller.HelloController2"></bean> <!-- 過濾靜態資源方式2:我個人覺得方式2最好,所有後綴的靜態資源都放行了 --> <!--<mvc:default-servlet-handler/> --><!-- 過濾靜態資源方式3: --> <mvc:resources location="/" mapping="*.html"/> </beans>
- HelloController.java
package com.controller; import java.io.IOException; import javax.servlet.ServletException; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import org.springframework.web.HttpRequestHandler; public class HelloController implements HttpRequestHandler { @Override public void handleRequest(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { System.out.println("請求過來了"); resp.sendRedirect("index.jsp"); } }
- HelloController2.java
package com.controller;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.springframework.web.servlet.ModelAndView;
import org.springframework.web.servlet.mvc.Controller;
public class HelloController2 implements Controller {
@Override
public ModelAndView handleRequest(HttpServletRequest req,
HttpServletResponse resp) throws Exception {
ModelAndView mv = new ModelAndView();
//將資料和檢視一起封裝並返回
mv.setViewName("index.jsp");
mv.addObject("name", "bwf");
return mv;
}
}