Spring MVC(一) 概念及环境搭建

首先了解下SpringMVC是什么


1.SpringMVC是一种思想,也是当前最优秀的MVC框架,自从Spring 2.5版本发布后,由于支持注解配置,易用性有了大幅度的提高。Spring 3.0更加完善,实现了对Struts 2的超越。现在越来越多的开发团队选择了Spring MVC。
Spring Web MVC是一种基于Java的实现了Web MVC设计模式的请求驱动类型的轻量级Web框架,即使用了MVC架构模式的思想,将web层进行职责解耦,基于请求驱动指的就是使用请求-响应模型,框架的目的就是帮助我们简化开发,Spring Web MVC也是要简化我们日常Web开发的。
简单来说:分层,解耦,简化开发

2.Spring3 MVC的优点:

  • Spring3 MVC使用简单,学习成本低。学习难度小于Struts2,Struts2用不上的多余功能太多。呵呵,当然这不是决定因素。

  • Spring3 MVC很容易就可以写出性能优秀的程序,Struts2要处处小心才可以写出性能优秀的程序(指MVC部分)

  • Spring3 MVC的灵活是你无法想像的,Spring框架的扩展性有口皆碑,Spring3 MVC当然也不会落后,不会因使用了MVC框架而感到有任何的限制。

核心原理

1、 用户发送请求给服务器。url:user

2、 服务器收到请求。发现Dispatchservlet可以处理。于是调用DispatchServlet。

3、 DispatchServlet内部,通过HandleMapping检查这个url有没有对应的Controller。如果有,则告诉DispatchServlet调用HandleAdapter去执行相应的Controller。

4、  Control开始执行

5、 Controller执行完毕后,如果返回字符串,则ViewResolver将字符串转化成相应的视图对象;如果返回ModelAndView对象,该对象本身就包含了视图对象信息。

6、 DispatchServlet将执视图对象中的数据,输出给服务器。

7、 服务器将数据输出给客户端

1214270-20181203184453565-595035514.png

环境搭建

之前创建好的Maven项目:

image.png

首先,要在main下创建两个文件夹:java,resources
main---New---Directory

image.png

注意:把java文件夹设为Sources Root

image.png

resources文件夹设为Resources Root

image.png

准备工作做好,主要步骤:

1、POM.xml中添加相应的依赖

2、在web.xml中配置DispatcherServlet
3、在resource目录中新建Springmvc的配置文件
所需要jar:




  4.0.0

  com.lianwei
  Test1
  1.0-SNAPSHOT
  war

  Test1 Maven Webapp
  
  http://www.example.com

  
    UTF-8
    1.7
    1.7
    4.2.5.RELEASE
    3.2.8.RELEASE
    1.8.7
  

  
    
      junit
      junit
      3.8.1
      test
    

    
      javax.servlet
      jstl
      1.2
    
    
      taglibs
      standard
      1.1.2
    

    
    
      org.springframework
      spring-core
      ${spring-version}
    

    
      org.springframework
      spring-test
      ${spring-version}
    

    
      org.springframework
      spring-context
      ${spring-version}
    

    
      org.springframework
      spring-tx
      ${spring-version}
    

    
      org.springframework
      spring-context-support
      ${spring-version}
    


    
      org.springframework
      spring-jdbc
      ${spring-version}
    

    
      org.springframework
      spring-aop
      ${spring-version}
    


    
      org.aspectj
      aspectjweaver
      ${aspect-version}
    

    
      org.springframework
      spring-beans
      ${spring-version}
    

    
      org.springframework
      spring-webmvc
      ${org.springframework-version}
    

    
    
      com.alibaba
      fastjson
      1.2.31
    

    
    
      log4j
      log4j
      1.2.17
    

  

  
    Test1
    
      
        
          maven-clean-plugin
          3.0.0
        
        
        
          maven-resources-plugin
          3.0.2
        
        
          maven-compiler-plugin
          3.7.0
        
        
          maven-surefire-plugin
          2.20.1
        
        
          maven-war-plugin
          3.2.0
        
        
          maven-install-plugin
          2.5.2
        
        
          maven-deploy-plugin
          2.8.2
        
      
    
  

web.xml




  Archetype Created Web Application
  
  
    springMVC
    org.springframework.web.servlet.DispatcherServlet
    
      contextConfigLocation
      classpath:applicationContext-mvc.xml
    
    1
  
  
    characterEncodingFilter
    org.springframework.web.filter.CharacterEncodingFilter
    
      encoding
      UTF-8
    
    
      forceEncoding
      true
    
  
  
    characterEncodingFilter
    /*
  
  
    springMVC
    /
  
  
  


在resources下新建springmvc配置文件
注意:文件名称要和web.xml中配置的核心servlet
classpath:applicationContext-mvc.xml的名称一致,也就是说由于该处配置的值是applicationContext-mvc.xml,所以配置文件名称应该为applicationContext-mvc.xml这样,web容器启动时就会找到该配置文件

applicationContext-mvc.xml





    
    

    
    

     
    
        
            
                
                    
                        text/html;charset=UTF-8
                        application/json
                        application/xml;charset=UTF-8
                    
                
            
        
    

    
    
        
        
    


image.png

测试
java文件夹新建com.controller包,包下新建
TestController.java

package com.controller;

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

/**
 * Created by Tired on 2018/8/3.
 */
@Controller
@RequestMapping("test")
public class TestController {
    @RequestMapping("/index")
    public String index()
    {
        return  "index";

    }
}

webapp下新增admin文件夹,下新建index.jsp

image.png

添加tomcat访问localhost:8080/test/index

image.png

你可能感兴趣的:(Spring MVC(一) 概念及环境搭建)