资讯专栏INFORMATION COLUMN

springmvc简介和快速搭建

Sike / 541人阅读

摘要:简介和众多其他框架一样,它基于的设计理念,此外,它采用可松散耦合可插拔组件结构,比其他框架更具扩展性和灵活性。框架围绕核心展开,是框架的总导演,总策划,它负责截获请求并将其分派给相应的处理器处理。

springmvc简介

springmvc和众多其他web框架一样,它基于MVC的设计理念,此外,它采用可松散耦合可插拔组件结构,比其他MVC框架更具扩展性和灵活性。

springmvc通过一套MVC注解,让POJO成为处理请求的控制器,无需实现任何接口,同时,springmvc还支持REST风格的URL请求。

springmvc框架围绕DispatcherServlet核心展开,DispatcherServlet是springMVC框架的总导演,总策划,它负责截获请求并将其分派给相应的处理器处理。
springmvc属于spring体系中servlet一部分。

springmvc的执行流程
1、用户发起请求到控制器 DispatcherServlet(前端控制器)  
2、前端控制器去handlerMapper查找Handler对象
3、HandlerMapper返回HandlerExecutorChain 执行链(包含两部分内容:Handler ,拦截器集合)
4、前端控制器,通过HandlerAdapter 适配器执行 Handler对象
5、Handler处理具体的业务逻辑
6、Handler处理完业务逻辑之后,返回ModelAndView 其中的View是视图名称
7、将ModelAndView返回前端控制器
8、前端控制器,通过ModelAndView 中的视图名称。在视图解析器中查找视图
9、返回真正的View 视图对象
10、渲染视图
11、返回用户响应
快速搭建springmvc

利用maven搭建springmvc

1 . 父工程的pom.xml


    4.0.0
    ouhei
    ouhei-parent
    0.0.1-SNAPSHOT
    pom

    
    
        4.10
        4.1.3.RELEASE
        3.2.8
        1.2.2
        1.2.15
        5.1.32
        1.6.4
        2.4.2
        1.0.9
        4.3.5
        1.2
        2.5
        2.0
        2.5
        3.3.2
        1.3.2
    

    
        
            
            
                junit
                junit
                ${junit.version}
                test
            

            
            
                org.springframework
                spring-context
                ${spring.version}
            
            
                org.springframework
                spring-beans
                ${spring.version}
            
            
                org.springframework
                spring-webmvc
                ${spring.version}
            
            
                org.springframework
                spring-jdbc
                ${spring.version}
            
            
                org.springframework
                spring-aspects
                ${spring.version}
            

            
            
                org.mybatis
                mybatis
                ${mybatis.version}
            
            
                org.mybatis
                mybatis-spring
                ${mybatis.spring.version}
            
            
            
                com.github.pagehelper
                pagehelper
                3.7.5
            
            
                com.github.jsqlparser
                jsqlparser
                0.9.1
            
            
            
                com.github.abel533
                mapper
                2.3.4
            

            
            
                mysql
                mysql-connector-java
                ${mysql.version}
            

            
                org.slf4j
                slf4j-log4j12
                ${slf4j.version}
            

            
            
                com.fasterxml.jackson.core
                jackson-databind
                ${jackson.version}
            

            
            
                com.jolbox
                bonecp-spring
                0.8.0.RELEASE
            

            
            
                org.apache.httpcomponents
                httpclient
                ${httpclient.version}
            

            
            
                jstl
                jstl
                ${jstl.version}
            
            
                javax.servlet
                servlet-api
                ${servlet-api.version}
                provided
            
            
                javax.servlet
                jsp-api
                ${jsp-api.version}
                provided
            

            
            
                joda-time
                joda-time
                ${joda-time.version}
            

            
            
                org.apache.commons
                commons-lang3
                ${commons-lang3.version}
            
            
                org.apache.commons
                commons-io
                ${commons-io.version}
            

        
    

    
        ${project.artifactId}
        
            
            
                org.apache.maven.plugins
                maven-resources-plugin
                2.7
                
                    UTF-8
                
            
            
            
                org.apache.maven.plugins
                maven-compiler-plugin
                3.2
                
                    1.7
                    1.7
                    UTF-8
                
            
        
        
            
                
                
                    org.apache.tomcat.maven
                    tomcat7-maven-plugin
                    2.2
                
            
        
    

2 . 创建一个maven工程,导入依赖,pom.xml如下


    4.0.0
    
        ouhei
        ouhei-parent
        0.0.1-SNAPSHOT
    

    ouhei
    springMVC
    0.0.1-SNAPSHOT
    war

    
        
        
            org.springframework
            spring-webmvc
        
        
        
            org.slf4j
            slf4j-log4j12
        

        
        
            com.fasterxml.jackson.core
            jackson-databind
        
        
        
            jstl
            jstl
        
        
            javax.servlet
            servlet-api
            provided
        
        
            javax.servlet
            jsp-api
            provided
        

    
    
    
        
            
            
            
                org.apache.tomcat.maven
                tomcat7-maven-plugin
                
                    8080
                    /
                
            
        
    

3 . 配置web.xml中的DispatcherServlet




    
    
        DispatcherServlet
        org.springframework.web.servlet.DispatcherServlet
        
        
        
            contextConfigLocation
            classpath:spring/springmvc-servlet.xml
        
        
        1
    
    
        DispatcherServlet
        *.action
    

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

4 . 添加springmvc-servlet.xml

在默认情况下:springmvc框架的配置文件必须叫-servlet.xml



    
    


    
    


    
    


    
    
    
        
        
    


5 . Action实现Controller接口

package cn.ouhei.mvc.controller;

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 HelloAction implements Controller {

    public ModelAndView handleRequest(HttpServletRequest requqest,HttpServletResponse response) throws Exception {
        ModelAndView modelAndView = new ModelAndView();
        modelAndView.addObject("message","这是我的第一个springmvc应用程序");
        modelAndView.setViewName("success");
        return modelAndView;
    }

}

6 . 建立一个success.jsp

7 . 配置tomcat

8 . 在浏览器输入 http://localhost:8080/hello.action

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/69304.html

相关文章

  • 两年了,我写了这些干货!

    摘要:开公众号差不多两年了,有不少原创教程,当原创越来越多时,大家搜索起来就很不方便,因此做了一个索引帮助大家快速找到需要的文章系列处理登录请求前后端分离一使用完美处理权限问题前后端分离二使用完美处理权限问题前后端分离三中密码加盐与中异常统一处理 开公众号差不多两年了,有不少原创教程,当原创越来越多时,大家搜索起来就很不方便,因此做了一个索引帮助大家快速找到需要的文章! Spring Boo...

    huayeluoliuhen 评论0 收藏0
  • 慕课网_《SpringMVC起步》学习总结

    摘要:起步学习总结时间年月日星期四说明本文部分内容均来自慕课网。慕课网教学示例源码个人学习源码第一章简介起步课程简介简介基本概念项目搭建用进行开发课程总结前端控制器开发应用的通用架构方式。 《SpringMVC起步》学习总结 时间:2017年2月16日星期四说明:本文部分内容均来自慕课网。@慕课网:http://www.imooc.com教学示例源码:https://github.com/z...

    zombieda 评论0 收藏0
  • SpringMVC入门笔记

    摘要:入门笔记简介是一种基于的实现了设计模式的请求驱动类型的轻量级框架,是系开源项目中的一个,和配合使用。配置在中需要添加使用的和映射规则。入门较快,而掌握起来相对较难。 SpringMVC入门笔记 1. 简介 Spring MVC是一种基于Java的实现了Web MVC设计模式的请求驱动类型的轻量级Web框架 ,是Spring系开源项目中的一个,和IoC配合使用。通过策略接口,Spring...

    zhaochunqi 评论0 收藏0
  • Java学习路线总结,搬砖工逆袭Java架构师(全网最强)

    摘要:哪吒社区技能树打卡打卡贴函数式接口简介领域优质创作者哪吒公众号作者架构师奋斗者扫描主页左侧二维码,加入群聊,一起学习一起进步欢迎点赞收藏留言前情提要无意间听到领导们的谈话,现在公司的现状是码农太多,但能独立带队的人太少,简而言之,不缺干 ? 哪吒社区Java技能树打卡 【打卡贴 day2...

    Scorpion 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<