<url-pattern>/</url-pattern>
的三种配置
① 完全匹配
<url-pattern>/test/list.do</url-pattern>
② 路径匹配
<url-pattern>/*</url-pattern>
struts2匹配根路径下的全部请求
③ 扩展名匹配
<url-pattern>*.do</url-pattern>
struts1
<url-pattern>*.html</url-pattern>
匹配全部html结尾的请求
<url-pattern>*</url-pattern>
不能用*,否则报错
只是springmvc-servlet.xml配置文件放错了位置 ,即使刚开始启动tomcat编译项目时候没有报加载错误
但是你访问路径是一定会出错,找一个对的地方 在web.xml中配置对springmvc-servlet.xml文件的位置
配置文件的上级文件夹 不能是包 必须是文件格式
<bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
<property name="dataSource" ref="dataSource" />
<!-- 自动扫描mapping.xml文件 -->
<property name="mapperLocations" value="classpath:mybatis.cfg.xml"></property>
</bean>
mapperLocations 这个直接配置mapper的文件路径
configLocation 加载mapper的配置文件 被加载的文件不用管格式
mybatis.cfg.xml 和 mvc-mapper.xml都可以
3.
上传文件到tomcat下面 服务器每次编译都会把文件清除。 为了解决这个问题,需要配置tomcat的上传文件虚拟路径
1.配置tomcat的server.xml文件 找到<host></host>
在里面配置<Context path="/blog/photo" docBase="D:/file/photo" />
前面是虚拟路径名字 后面是电脑上的物理路径名
配置路径 /blog/photo/29.jpg
访问路径 http://127.0.0.1:8080/blog/showPhoto.jsp
//上传文件的时候 写物理路径 访问的时候写虚拟路径
代码中写路径的时候可以这样 D:/file/photo
也可以这样 D:\file\photo 两个\是因为\是转义字符 所以需要多加个
4.
<mvc:resources location="/WEB-INF/photo/" mapping="/photo/**" cache-period="31556926"/>
location是实际路径 mapping是映射路径
<img src="/blog/photo/40.jpg" width="200" hight="200"/>
当tomcat虚拟路径与mvc:resources冲突时
如果 只有一个文件使用了该路径 按虚拟路径处理
如果有两个或两个以上文件使用了该路径 系统默认选择mvc:resources配置的映射路径
如果所选的两个文件名字不一样 路径一样 各按各的路径处理
5.静态资源文件不放到WEB-INF下面
mvc-servlet的配置静态文件
<mvc:resources location="static/css/" mapping="/css/**" cache-period="31556926"/>
配置完静态资源路径后,无论从浏览器访问还是页面引用都直接可以使用映射后的路径,即mapping=的路径。
静态文件的路径假如为WebContent/static/css
那这时引用路径为
link href=”css/bootstrap.min.css” rel=”stylesheet”
总结:1.文件**不放**WEB-INF下面
2.配置静态文件的路径不是引用文件的正确路径,应该是实际的相对路径
3在引用时,如果是同级,路径最前面不用加/
6.spring mvc静态资源的配置
web.xml里面配置springmvc的拦截形式必须是/或者/*,如果使用 *.do
则拦截不到静态资源,配置
<mvc:default-servlet-handler/>
也就无效了
<mvc:resources location="static/css/" mapping="/css/**" cache-period="31556926"/>
<servlet-mapping>
<servlet-name>springmvc</servlet-name>
<!-- 1、.action访问以.action结尾的 由DispatcherServlet进行解析
2、/,所有访问都由DispatcherServlet进行解析
-->
<url-pattern>/</url-pattern>
</servlet-mapping>