第一个SpringMVC程序详解

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_37606901/article/details/82597234

创建一个java类:

package com.myproject.cn;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import org.springframework.web.servlet.ModelAndView;
import org.springframework.web.servlet.mvc.Controller;

public class MyController implements Controller {

    @Override
    //注意:因为MyController这个类名字是随意起的,那么也就是说它是需要进行注册的。所以我们应该在xml里面书写配置环境。
    public ModelAndView handleRequest(HttpServletRequest request,
            HttpServletResponse response) throws Exception {
        //因为要返回ModelAndView,所以我在这里new一个对象出来。
    ModelAndView mv = new   ModelAndView();
    //因为mv里面没有数值所以我们就要进行初始化。
    mv.addObject("message","Hello SpringMVC World!");
    //设置视图
    mv.setViewName("/WEB-INF/jsp/welcome.jsp");//让这个页面直接跳转到jsp页面。
    //在web-inf下面进行创建jsp
    /*注意:在web-inf下面的资源与以及在src下面存放的资源是有明显的区别的。
     * (1)在web-inf下面存放的资源是不能够通过浏览器直接访问到的,比较安全,意味着重定向(重定向是浏览器发出的第二次请求 )的时候是不能重定向到web-inf下面的。只能是后台服务端的程序才可以直接跳转过去的。
     * (2)
     */


        return mv;
    }

}

注册中央处理器:在src下面创建一个springmvc.xml,进行注册中央处理器,如下:

<?xml version="1.0" encoding="UTF-8"?>
<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:aop="http://www.springframework.org/schema/aop" 
    xmlns:tx="http://www.springframework.org/schema/tx"
    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/tx 
        http://www.springframework.org/schema/tx/spring-tx.xsd
        http://www.springframework.org/schema/aop 
        http://www.springframework.org/schema/aop/spring-aop.xsd">

    <!-- 注册视图解析器 -->
    <bean class="org.springframework.web.servlet.view.InternalResourceViewResolver">
        <property name="prefix" value="/WEB-INF/jsp/"/>
        <property name="suffix" value=".jsp"/>
    </bean>

    <!-- 注册处理器 -->
    <bean id="/my.do" class="com.myproject.cn.MyController"/>
</beans>

注意:因为MyController这个类名字是随意起的,那么也就是说它是需要进行注册的。所以我们应该在xml里面书写配置环境。所以在web-inf下面进行注册;

<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://java.sun.com/xml/ns/javaee 
    http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">

    <!-- 注册中央调度器 -->
    <servlet>
        <servlet-name>springMVC</servlet-name>
        <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
        <!-- 指定springMVC配置文件的位置及文件名 -->
        <init-param>
            <param-name>contextConfigLocation</param-name>
            <param-value>classpath:springmvc.xml</param-value>
        </init-param>
        <!-- 在Tomcat启动时直接创建当前Servlet -->
        <load-on-startup>1</load-on-startup>
    </servlet>
    <servlet-mapping>
        <servlet-name>springMVC</servlet-name>
        <url-pattern>*.do</url-pattern>
    </servlet-mapping>

    <welcome-file-list>
        <welcome-file>index.jsp</welcome-file>
    </welcome-file-list>
</web-app>

在浏览器中运行即可。如果运行处问题,比如说:
这里写图片描述

那么,第一种可能是:
这里写图片描述

第二种可能是:
可能是同时运行了几个项目,然后项目之间相互影响。解决办法:
找到 tomcat文件,然后在tomcat里面删除一些项目,如图:
这里写图片描述

第三种可能是路径不对,你看看springmvc的路径是在src下面还是在web-inf下面。本题是在src下面;

第四种可能是tomcat出问题了。但是这个可能性就是比较低的,还是有可能出现这种情况。

猜你喜欢

转载自blog.csdn.net/qq_37606901/article/details/82597234