今天我搭建了一个新的项目,但是使用了springMVC框架来将对应的url请求对应的方法,在web.xml配置如下:
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd"
version="2.5">
<display-name>Archetype Created Web Application</display-name>
<!-- 配置spring mvc servlet -->
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>
<!-- 过滤器utf-8 -->
<filter>
<filter-name>encodingFilter</filter-name>
<filter-class>
org.springframework.web.filter.CharacterEncodingFilter
</filter-class>
<init-param>
<param-name>encoding</param-name>
<param-value>UTF-8</param-value>
</init-param>
<init-param>
<param-name>forceEncoding</param-name>
<param-value>true</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>encodingFilter</filter-name>
<url-pattern>/</url-pattern>
</filter-mapping>
<servlet>
<servlet-name>spring</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<init-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath:springMVC-servlet.xml</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
<servlet-mapping>
<servlet-name>spring</servlet-name>
<url-pattern>*.do</url-pattern>
</servlet-mapping>
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>classpath:application.xml</param-value>
</context-param>
<welcome-file-list>
<welcome-file>
index.htm
</welcome-file>
</welcome-file-list>
</web-app>
<mvc:annotation-driven />
<!-- 注解扫描路径 -->
<context:annotation-config />
<context:component-scan base-package="micro" />
<bean
class="org.springframework.web.servlet.mvc.annotation.AnnotationMethodHandlerAdapter" />
<!-- Declare a view resolver -->
<bean id="viewResolver"
class="org.springframework.web.servlet.view.InternalResourceViewResolver">
<property name="prefix" value="/WEB-INF/"></property>
<property name="suffix" value=".htm"></property>
</bean>
后来检查了jar也没问题,但是无论如何访问不到该方法,这个问题我也查找了相关的资料,但是一直没找到问题所在,我扫描注解的包为micro,后来发现在micro下面这个文件里报错,但是我项目并没显示红色的叉,所以注解并没成功将bean注入,修改好这个错误,url映射成功。后来原来是我编辑器把错误没显示在文件上:
导致我不能检查出我包下面有错误,导致注解失败,现在修改ecplise:项目上右键–>properties–>java compiler–>building–>enable project specific setting–>build path problems–>选中abort Incomplete build path/Circular dependencies 这两个选项修改为Warning。
或者是直接恢复默认。就可以显示出错误
消灭红叉,然后正常工作。
看了此篇文章是不是感觉收获蛮大