急急急

急急急

老师 ,为什么我这里打开地址之后 得到的是一个网页的代码?
我尝试了将老师的jsp页面直接复制过来还是这样。

http://img1.sycdn.imooc.com//climg/5e942872092dd0a019201039.jpg

正在回答

登陆购买课程后可参与讨论,去登陆

2回答

同学你好!

这个问题的本质是jsp被当作静态资源解析了,你的代码中页进行了相关的配置,你去掉就可以了

http://img1.sycdn.imooc.com//climg/5e944cfd0917f7ba05470297.jpg

祝学习愉快~

  • jia_蛙 提问者 #1
    谢谢老师 我把jpg看成jsp了
    2020-04-13 19:53:30
提问者 jia_蛙 2020-04-13 17:01:55
web.xml

<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd"
         version="3.1">

    <!--0.配置字符过滤器-->
    <filter>
        <filter-name>encoding</filter-name>
        <filter-class>com.zhou.oa.global.EncodingFilter</filter-class>
        <!--0.1 配置默认字符集参数-->
        <init-param>
            <param-name>encoding</param-name>
            <param-value>utf-8</param-value>
        </init-param>
    </filter>
    <filter-mapping>
        <filter-name>encoding</filter-name>
        <url-pattern>/*</url-pattern>
    </filter-mapping>

    <!--1. 配置Spring MVC的加载 并对所有的路径进行拦截,将其转发到
    org.springframeword.web.servlet.DispatcherServlet中进行处理-->
    <servlet>
      <servlet-name>SpringMVC</servlet-name>
      <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
      <!--1.1 通过初始化参数的形式指定SpringMVC的配置文件在哪-->
      <init-param>
        <param-name>contextConfigLocation</param-name>
        <param-value>classpath:spring-web.xml</param-value>
      </init-param>
      <!--1.2 项目启动时自动加载-->
      <load-on-startup>1</load-on-startup>
    </servlet>
    <servlet-mapping>
      <servlet-name>SpringMVC</servlet-name>
      <url-pattern>/</url-pattern>
    </servlet-mapping>    <!--2.将符合规则的文件交给servlet来处理,在web项目中间,
    不管你有没有创建servlet,它都有一个名叫default的servlet,所以这里
    我们可以不用配置<servlet>直接使用default的<servlet-mapping>-->
    <servlet-mapping>
        <!--按目录指定-->
        <servlet-name>default</servlet-name>
        <url-pattern>/assets/*</url-pattern>
        <url-pattern>/js/*</url-pattern>
        <url-pattern>/vendor/*</url-pattern>
        <!--按后缀指定-->
        <url-pattern>*.js</url-pattern>
        <url-pattern>*.jsp</url-pattern>
        <url-pattern>*.gif</url-pattern>
        <url-pattern>*.png</url-pattern>
        <url-pattern>*.css</url-pattern>
    </servlet-mapping>


</web-app>
Spring-web.xml

<beans xmlns="http://www.springframework.org/schema/beans"
       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
       xmlns:context="http://www.springframework.org/schema/context"
       xmlns:mvc="http://www.springframework.org/schema/mvc"
       xsi:schemaLocation="http://www.springframework.org/schema/beans
    http://www.springframework.org/schema/beans/spring-beans.xsd
    http://www.springframework.org/schema/context
    http://www.springframework.org/schema/context/spring-context.xsd
    http://www.springframework.org/schema/mvc
    http://www.springframework.org/schema/mvc/spring-mvc.xsd">

    <!--0.关联其他配置文件:当前spring-web.xml中可能调用biz里面的东西
     所以我们这里可以把spring-biz.xml配置文件引入进来-->
    <import resource="spring-biz.xml"/>

    <!--1.开启自动扫描-->
    <context:component-scan base-package="com.zhou.oa.controller"/>

    <!--2.开始Spring MVC的注解驱动-->
    <mvc:annotation-driven/>

    <!--3.配置静态资源的设置规则:将静态资源交给Servlet去处理
    配置<mvc:default-servlet-handler />后,会在Spring MVC上下文中定义一个
    org.springframework.web.servlet.resource.DefaultServletHttpRequestHandler
    它会像一个检查员,对进入DispatcherServlet的URL进行筛查,如果发现是静态资源
    的请求,就将该请求转由Web应用服务器默认的Servlet处理,如果不是静态资源的请
    求,才由DispatcherServlet继续处理-->
    <mvc:default-servlet-handler/>

    <!--4.配置视图转换器(SpringMvc会默认的去调用,所以不用声明id)-->
    <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
        <!--4.1 指定视图转换器的转换格式-->
        <property name="viewClass" value="org.springframework.web.servlet.view.JstlView"/>
        <!--4.2 配置页面的前缀和后缀标识(这样的话我们只需要指定页面的本名就可以)
            以下面来说,如果我们控制器转向一个页面,如果这个页面名字叫login的话,
            其实它转向的是webapp/WEB-INF/pages/login.jsp -->
        <!--4.2.1 配置前缀-->
        <property name="prefix" value="/WEB-INF/pages/"/>
        <!--4.2.2 配置后缀-->
        <property name="suffix" value=".jsp"/>
    </bean>
</beans>


  • 提问者 jia_蛙 #1
    控制台不报错
    2020-04-13 17:28:46
  • 提问者 jia_蛙 #2
    我看了很多地方都说是<url-pattern>/</url-pattern>的问题,这里他们都是讲<url-pattern></url-pattern>里面使用/ 而不是使用/* ,但是我这里就是使用的/
    2020-04-13 18:13:27
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
请稍等 ...
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师