【SSM框架x2】在maven基础下配置springmvc


1.使用maven新建项目

archetype列表中选择maven-archetype-webapp新建javaweb项目。

本教程没有其他冗余的jar包,所以能更直接的get到对应的需要的技术

2.添加jar包

pom.xml文件dependencies添加如下spring-webspring-webmvcjar包,这两个是springmvc依赖包。添加代码后,IDEA提示import,老规矩,import一下!

    
    
      org.springframework
      spring-web
      4.1.4.RELEASE
    

    
    
      org.springframework
      spring-webmvc
      4.1.4.RELEASE
    
  

3.xml文件的配置

首先在webapp/WEB-INF/web.xml配置服务,将web.xml原来的代码替换成掉。因为需要的web-app便签是带有一些属性的,所以改动的地方很多,我们看以下两段代码

这是原来的代码:




  Archetype Created Web Application

这是新的代码:



    web_test

    
        spring-mvc
        
            org.springframework.web.servlet.DispatcherServlet
        
        1
    

    
        spring-mvc
        /
    

    
    
    
        contextConfigLocation
        /WEB-INF/root-context.xml
    


    
    
        org.springframework.web.context.ContextLoaderListener
    


接下来你会看到代码中报红色的地方,不要慌,我们在对应的地方建立这个文件webapp/WEB-INF/root-context.xml,很好,然后在同样的地方创建spring-mvc-servlet.xml(webapp/WEB-INF/spring-mvc-servlet.xml)



先解释一下web.xml某些代码:

  
    spring-mvc
    
      org.springframework.web.servlet.DispatcherServlet
    
    1
  

  
    spring-mvc
    /
  

↑这段代码发挥的作用很重要,但是也很简单,不要紧张。
首先看到标签,它的作用是优先级,结果也就是它所在的spring-mvc这个服务优先启动,它的class路径为我们添加的spring-web jar包的一个类。所以使用web.xml时,DispatcherServlet类也就被使用了。我们暂且忽略。

  
    contextConfigLocation
    /WEB-INF/root-context.xml
  

↑这段代码:配置了root-context.xml这个文件来指向 contextConfigLocation这个param-name,context的作用这里也不再说明。


添加spring-mvc-servlet.xmlroot-context.xml代码

添加spring-mvc-servlet.xml代码,报红色的地方因为项目结构的包或目录还没建,或者不对,稍后修改。




    

    

    

        
            /WEB-INF/pages/
        

        
            .jsp
        

    


添加root-context.xml代码:




    


4.完善项目结构

按照以下项目添加包(目录),HelloWorldController.javahelloworld.jsp文件。

简单的项目结构

查看spring-mvc-servlet.xml文件报错是否消除,报错部分需要指定到我们controller.java所在的包(springmvc),如果没有消除报错,按住alt+ctrl+shift+s打开项目结构,按下图操作添加源路径。

模块-源码,然后点击应用

5.添加代码运行

HelloWorldController.java文件添加以下代码

package springmvc;

import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.web.bind.annotation.RequestMapping;

@Controller
public class HelloWorldController {

    @RequestMapping("/hello")
    public String hello(Model model) {

        model.addAttribute("greeting", "Hello Spring MVC");

        return"helloworld";

    }

}

helloworld.jsp添加以下代码

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


    helloworld


${greeting}

好了,配置本地tomcat开始运行项目吧!
运行项目的/hello能看到这句话,那就成功啦,神奇的springmvc就是这么个效果!可能你还不知道是怎么回事,再看看代码就明白啦!

成功

6.解释

关键在这段代码,它已经声明了自己类是@Controller,这样它就能接受请求了,@RequestMapping("/hello")说明hello(Model model)能处理/hello这个请求,return "helloworld"返回的是处理结果的页面,这里是helloworld.jsp。

@Controller
public class HelloWorldController {

    @RequestMapping("/hello")
    public String hello(Model model) {

        model.addAttribute("greeting", "Hello Spring MVC");

        return"helloworld";

    }
springmvc 请求响应过程

现在我们能简单实用springmvc了,springmvc的几种请求以及原理还需要再多多学习,感谢这篇文章教程,Spring4 MVC HelloWord实例--易百教程,里边还有几个例子

你可能感兴趣的:(【SSM框架x2】在maven基础下配置springmvc)