SpringMVC学习笔记1——Intellij使用SpringMVC实现第一个HelloWorld程序(使用Maven导入依赖)

一、创建Maven程序

1.new project

SpringMVC学习笔记1——Intellij使用SpringMVC实现第一个HelloWorld程序(使用Maven导入依赖)_第1张图片

填写程序的Maven坐标

SpringMVC学习笔记1——Intellij使用SpringMVC实现第一个HelloWorld程序(使用Maven导入依赖)_第2张图片

选择自身maven根目录,其他默认即可

SpringMVC学习笔记1——Intellij使用SpringMVC实现第一个HelloWorld程序(使用Maven导入依赖)_第3张图片

修改项目信息,点击finish即创建完成

SpringMVC学习笔记1——Intellij使用SpringMVC实现第一个HelloWorld程序(使用Maven导入依赖)_第4张图片

SpringMVC学习笔记1——Intellij使用SpringMVC实现第一个HelloWorld程序(使用Maven导入依赖)_第5张图片

修改目录结构,在main文件下新建一个src文件夹并设置成Source Root文件目录

SpringMVC学习笔记1——Intellij使用SpringMVC实现第一个HelloWorld程序(使用Maven导入依赖)_第6张图片

一个Maven管理的web项目就创建完成!

二、添加相关依赖

点开pom.xml文件可以看到默认是有junit依赖的

SpringMVC学习笔记1——Intellij使用SpringMVC实现第一个HelloWorld程序(使用Maven导入依赖)_第7张图片

这里我们要使用SpringMVC框架,导入spring-webmvc依赖,来到Maven Repository,搜索

SpringMVC学习笔记1——Intellij使用SpringMVC实现第一个HelloWorld程序(使用Maven导入依赖)_第8张图片

点击第一个然后选择

4.1.1.RELEASE

版本,进入后赋值粘贴maven地址:



    org.springframework
    spring-webmvc
    4.1.1.RELEASE

 

为了统一对spring jar包版本统一管理,我们使用

    4.1.1.RELEASE

SpringMVC学习笔记1——Intellij使用SpringMVC实现第一个HelloWorld程序(使用Maven导入依赖)_第9张图片

这样springmvc的jar包就导入进来了!

三、配置SpringMVC

在src目录下(不一定在这里,也可以在别的地方)新建springmvc.xm:

SpringMVC学习笔记1——Intellij使用SpringMVC实现第一个HelloWorld程序(使用Maven导入依赖)_第10张图片

在web.xml配置前端控制器,并将springmvc.xml配置文件加载进来:里面加上以下代码:

    
    
        DispatcherServlet
        org.springframework.web.servlet.DispatcherServlet
        
        
        
            contextConfigLocation
            
            classpath:sprinmvc.xml
        
    
    
        DispatcherServlet
        /*
    

如果还要让springmvc控制器能接受中文请求的话还得配置springmvc自带的编码过滤器

    
        encodingFilter
        org.springframework.web.filter.CharacterEncodingFilter
        
            encoding
            UTF-8
        
        
            forceEncoding
            true
        
    
    
        encodingFilter
        /*
    

     加上后如果web-app报错如一样,把web.xml文件上面的

     SpringMVC学习笔记1——Intellij使用SpringMVC实现第一个HelloWorld程序(使用Maven导入依赖)_第11张图片

     删掉就可以了!

四、编写处理请求的处理器

src下新建一个控制器类cn.jxufe.controller.HelloWorldController

package cn.jxufe.controller;

import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;

//加上注解就是一个控制器了!
@Controller
public class HelloWorldController {

    //使用RequestMapping来映射来自jsp的请求

    //返回值会通过视图解析器解析为现实的物理视图 即文件prefix + 返回值 + suffix,这里就          
    //是/WEB-INF/success.jsp
    @RequestMapping(value = "/helloworld", method = RequestMethod.POST)
    public String helloWorld() {
        return "success";
    }
}

value就是发送请求时访问到这个控制器这个方法的url,method指明需要的请求方式。

 

然后在到springmvc下配置视图解析器:

    
         
         
    

五、新建success.jsp并运行!

修改index.jsp



    to success.jsp


新建success.jsp

<%@ page contentType="text/html;charset=UTF-8" language="java" %>


    成功


    

Hello World!

配置好tomcat然后运行:

发现启动失败:

查看日志

SpringMVC学习笔记1——Intellij使用SpringMVC实现第一个HelloWorld程序(使用Maven导入依赖)_第12张图片

可以知道当我们访问index.jsp时也是向diapatcherServlet发送请求,dispatcher扫描控制器映射,发现映射中没有符合名为index.jsp的控制器,所以就会出现错误。

具体原理可以看这个

把web中的/*改成/helloworld,重启tomcat

SpringMVC学习笔记1——Intellij使用SpringMVC实现第一个HelloWorld程序(使用Maven导入依赖)_第13张图片

 

发现就可以启动了:

SpringMVC学习笔记1——Intellij使用SpringMVC实现第一个HelloWorld程序(使用Maven导入依赖)_第14张图片

<%--index.jsp--%>


    

点击to successful.jsp

SpringMVC学习笔记1——Intellij使用SpringMVC实现第一个HelloWorld程序(使用Maven导入依赖)_第15张图片

成功!

 

后加:

其实前面web.xml的配置可以直接吧 / * 改成 //*表示管理所有请求不管时jsp、html、jpg什么的,而 / 表示只管理url没有后缀名的请求。

或者可以改成类似于 /*.do这样的,后缀名为 .do 的请求都要被安排!

web.xml文件中的 标签表示的是该DispatcherServlet在服务器启动时就被加载(实例化并调用其init()方法)!

 

你可能感兴趣的:(J2EE,ssh,ssm,Spring,工具,架构)