发表于: 2016-04-01 20:56:52
1 2844
【操作步骤】
【知识总结】
1.SpringMVC访问静态资源的三种方式:http://blog.163.com/koko_qiang/blog/static/207213184201382091154584/
2.java web工程项目结构:http://www.cnblogs.com/wshcn/archive/2015/04/05/4394481.html
【出现的问题(已解决)】
1.在挣扎了两天之后,终于解决了一个问题。
1.1 问题描述:我把css班给我的静态页面(包括html、css、js文件)放入maven web项目的webapp目录下,并在该目录下新建jsp文件夹,把html页面转换成的jsp文件放入该文件夹内。当我把这个项目部署到jetty上时,通过http://localhost:8080/ITtask_4/jsp/home.jsp路径可以访问到jsp页面,但是页面中的css样式和图片全部失效;而且通过http://localhost:8080/ITtask_4/html/home.html路径不能访问到html页面,错误提示是“404 NOT FOUND”。
1.2 尝试解决问题:刚开始我坚信jsp页面无法正常显示css样式和图片是因为我路径有问题,所以我尝试了各种路径的写法,包括利用“request.getContextPath()”函数和“request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+request.getContextPath()”函数,相对路径和绝对路径我都尝试过,但都无效。
1.3 问题解决:这个问题的实际原因是在web.xml配置文件中,我设置了拦截所有文件,导致静态资源无法加载。解决办法有两个:
①在web.xml中修改,把:
<servlet-mapping>
<servlet-name>dispatcher</servlet-name>
<url-pattern>/</url-pattern>
</servlet-mapping>
改为:
<servlet-mapping>
<servlet-name>dispatcher</servlet-name>
<url-pattern>/*.do</url-pattern>
</servlet-mapping>
②保持web.xml不变,在dispatcher-servlet.xml中修改,只需要在<beans></beans>标签中加上一句:<mvc:default-servlet-handler/> 就可以了。
【出现的问题(未解决)】
1.了解IOC。明天详细看。
【疑问】
评论