================== Spring MVC静态资源 ================== 1 前端页面 /src/main/webapp/addBook.jsp: <%@ page contentType="text/html;charset=UTF-8" language="java" %> 添加一本图书

添加一本图书


表单提交

书名:

作者:

价格:

2 测试 通过浏览器访问http://localhost:8080/SpringMVC/addBook.jsp: 报404错。 3 “/*”和“/”的区别 /src/main/webapp/WEB-INF/web.xml: ----> SpringMVC | | | v | org.springframework.web.servlet.DispatcherServlet | ... | | ----- SpringMVC ^ | /* “/*” - 拦截所有的http请求,包括对jsp的请求 - 一律映射到名为SpringMVC的Servlet - 该Servlet是一个类型为DispatcherServlet的对象 - 该对象将addBook.jsp理解为一个控制器(Controller)的名字 - 但并没有名为addBook.jsp的控制器对象 - 报404错 “/”与“/*”一样,也会拦截所有http请求,但不包括对jsp的请求。 4 放行jsp /src/main/webapp/WEB-INF/web.xml: ... ... / ... ... 通过浏览器访问http://localhost:8080/SpringMVC/addBook.jsp: 成功打开页面。 5 其它静态资源 “/”虽然会放行jsp,但对html/css/js/图片等静态资源的请求依然会被拦截。 /src/main/webapp/pages/index.html: Spring MVC

Spring MVC

通过浏览器访问http://localhost:8080/SpringMVC/pages/index.html: 报404错。 /src/main/webapp/css/style.css: body { background: lightskyblue; } /src/main/webapp/addBook.jsp: <%@ page contentType="text/html;charset=UTF-8" language="java" %> ... ... ... ... 通过浏览器访问http://localhost:8080/SpringMVC/addBook.jsp: 样式不起作用。 6 静态资源映射 /src/main/resources/spring-servlet.xml: ... ... 通过浏览器访问http://localhost:8080/SpringMVC/pages/index.html: 成功打开页面。 通过浏览器访问http://localhost:8080/SpringMVC/addBook.jsp: 成功应用样式。 类似地,还可以包含更多静态资源映射: ... ... 例程:SpringMVC