出现404报错信息:
1.我出现的错误是配置没问题,找了一圈发现自己单词拼错了,导致运行不了,出现404
2.配置问题:
jar包:首先导入spring 的jar包15个,log4j两个,junit两个。(我是直接在电脑上建了一个文件夹,用的时候直接复制粘贴,不用每次来回倒)
配置文件:log4j.xml:
<?xml version="1.0" encoding="UTF-8"?> <!-- status=debug 可以查看log4j的装配过程 --> <configuration status="off" monitorInterval="1800"> <appenders> <!-- 定义控制台输出 --> <Console name="Console" target="SYSTEM_OUT" follow="true"> <PatternLayout pattern="%date{yyyy-MM-dd HH:mm:ss.SSS} %level [%thread][%file:%line] - %msg%n" /> </Console> <RollingRandomAccessFile name="System" fileName="logs/mvchain/system.log" filePattern="logs/mvchain/system_%d{yyyy-MM-dd}_%i.log"> <PatternLayout pattern="%date{yyyy-MM-dd HH:mm:ss.SSS} %level [%thread][%file:%line] - %msg%n" /> <Policies> <!-- 多长时间生成一个文件;默认1天 --> <TimeBasedTriggeringPolicy interval="1" modulate="true" /> <!-- 多大的文件要切分 --> <SizeBasedTriggeringPolicy size="5K" /> </Policies> </RollingRandomAccessFile> <!-- 外部打印日志 --> <RollingRandomAccessFile name="Outer" fileName="logs/mvchain/outer.log" filePattern="logs/mvchain/outer_%d{yyyy-MM-dd}_%i.log"> <PatternLayout pattern="%date{yyyy-MM-dd HH:mm:ss.SSS} %level [%thread][%file:%line] - %msg%n" /> <Policies> <TimeBasedTriggeringPolicy interval="1" modulate="true" /> <SizeBasedTriggeringPolicy size="100M" /> </Policies> </RollingRandomAccessFile> <!-- 线程打印日志 --> <RollingRandomAccessFile name="Timer" fileName="logs/mvchain/timer.log" filePattern="logs/mvchain/timer_%d{yyyy-MM-dd}_%i.log"> <PatternLayout pattern="%date{yyyy-MM-dd HH:mm:ss.SSS} %level [%thread][%file:%line] - %msg%n" /> <Policies> <TimeBasedTriggeringPolicy interval="1" modulate="true" /> <SizeBasedTriggeringPolicy size="100M" /> </Policies> </RollingRandomAccessFile> </appenders> <loggers> <!-- Root Logger(这个是整个配置文件的入口 --> <root level="trace"> <!-- 调用定义的log4j配置 console:指的是名字;(在这个标签中定义configuration==>appenders这下面标签的name属性 ) --> <appender-ref ref="Console" /> <appender-ref ref="System" /> </root> <!-- 外部日志,分开日志,name为getLogger() console:指的是名字;(在这个标签中定义configuration==>appenders这下面标签的name属性 ) 下面定义的多个组合,logger标签中任意组合 --> <logger name="SystemLog" level="info" additivity="false"> <appender-ref ref="Console" /> <appender-ref ref="System" /> </logger> <!-- 外部日志,分开日志,name为getLogger() --> <logger name="OuterLog" level="info" additivity="false"> <!-- 日志文件要输出到三个地方,控制台,系统文件,外部文件 --> <appender-ref ref="Console" /> <appender-ref ref="System" /> <appender-ref ref="Outer" /> </logger> <!-- 线程日志,分开日志,name为getLogger() --> <logger name="TimerLog" level="info" additivity="false"> <!-- 日志文件要输出到三个地方,控制台,系统文件,外部文件 --> <appender-ref ref="Console" /> <appender-ref ref="System" /> <appender-ref ref="Outer" /> </logger> </loggers> </configuration>
web.xml:
1 <?xml version="1.0" encoding="UTF-8"?> 2 <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 3 xmlns="http://xmlns.jcp.org/xml/ns/javaee" 4 xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_4_0.xsd" 5 id="WebApp_ID" version="4.0"> 6 <display-name>01_spring_mvc2</display-name> 7 <!-- 配置开始 --> 8 <servlet> 9 <servlet-name>DispatcherServlet</servlet-name> 10 <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> 11 <!-- 一起动就初始化此servlet,数字小的先加载,大的后加载 --> 12 <init-param> 13 <param-name>contextConfigLocation</param-name> 14 <param-value>classpath*:applicationContext_*.xml</param-value> 15 </init-param> 16 17 <load-on-startup> 1</load-on-startup> 18 </servlet> 19 20 <servlet-mapping> 21 <servlet-name>DispatcherServlet</servlet-name> 22 <!-- 所有url启动要以htm结尾才会访问此servlet --> 23 <url-pattern>*.htm</url-pattern> 24 25 </servlet-mapping> 26 <!-- 配置结束 --> 27 28 <welcome-file-list> 29 <welcome-file>index.html</welcome-file> 30 <welcome-file>index.htm</welcome-file> 31 <welcome-file>index.jsp</welcome-file> 32 <welcome-file>default.html</welcome-file> 33 <welcome-file>default.htm</welcome-file> 34 <welcome-file>default.jsp</welcome-file> 35 </welcome-file-list> 36 </web-app>
index.jsp
1 <%@ page language="java" contentType="text/html; charset=UTF-8" 2 pageEncoding="UTF-8"%> 3 <!DOCTYPE html> 4 <html> 5 <head> 6 <meta charset="UTF-8"> 7 <title>首页</title> 8 </head> 9 <body> 10 <!-- 项目命 --> 11 ${pageContext.request.contextPath } 12 <table border="1"style="width:80%"> 13 <tr> 14 15 <td>名字</td> 16 <td>连接</td> 17 </tr> 18 19 <tr> 20 21 <td>xml</td> 22 <td> 23 <a href="${pageContext.request.contextPath}/xmlController.htm" target="_blank">xml</a> 24 </td> 25 </tr> 26 <tr> 27 28 <td>anno</td> 29 <td><a href="${pageContext.request.contextPath}/test1.htm" target="_blank">anno</a></td> 30 </tr> 31 32 <tr> 33 34 <td>anno2</td> 35 <td><a href="${pageContext.request.contextPath}/test2.htm" target="_blank">anno2</a></td> 36 </tr> 37 38 39 </table> 40 41 </body> 42 </html>
applicationContext_common.xml:
1 <?xml version="1.0" encoding="UTF-8"?> 2 <beans xmlns="http://www.springframework.org/schema/beans" 3 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 4 xmlns:context="http://www.springframework.org/schema/context" 5 xmlns:aop="http://www.springframework.org/schema/aop" 6 xsi:schemaLocation="http://www.springframework.org/schema/beans 7 https://www.springframework.org/schema/beans/spring-beans.xsd 8 http://www.springframework.org/schema/context 9 https://www.springframework.org/schema/context/spring-context.xsd 10 http://www.springframework.org/schema/aop 11 https://www.springframework.org/schema/aop/spring-aop.xsd"> 12 <context:component-scan 13 base-package="conttroller"></context:component-scan> 14 15 <bean id="xmlController" name="/xmlController.htm" 16 class="conttroller.XmlController"> 17 </bean> 18 19 20 </beans>
另外还需要一个Java文件和jsp就不粘贴