栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

SpringMVC

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

SpringMVC

一、SpringMVC概述

Spring MVC是由Spring官方提供的基于MVC设计理念的web框架。

Spring MVC是基于Servlet封装的用于实现MVC控制的框架,实现前端、服务端的交互。

1.1 SpringMVC优势

严格遵守了分层思想;采用了松耦合、插件式结构,相比较于自己封装的baseServlet以及其他的一些MVC框架,更加灵活、更具扩展性;SpringMVC是基于Spring的扩展,提供了一套完善的MVC注解;SpringMVC在数据绑定、视图解析都提供了多种处理方式,可灵活配置;SpringMVC对RESTFUL URL设计风格提供了良好的支持。

1.2 SpringMVC工作原理

接受并解析请求;处理请求;数据渲染、响应请求;

二、SpringMVC框架部署 2.1 基于Maven创建一个web工程 2.2 添加SpringMVC依赖

spring-contextaspectsjdbcwebwebmvcjunit

    
        5.3.2 
        15
        15
    
    
    
        
            org.springframework
            spring-context
            ${spring.version}
        
        
            org.springframework
            spring-aspects
            ${spring.version}
        
        
            org.springframework
            spring-jdbc
            ${spring.version}
        
        
            org.springframework
            spring-web
            ${spring.version}
        
        
            org.springframework
            spring-webmvc
            ${spring.version}
        
        
        
            junit
            junit
            4.12
            test
        
    
 2.3 创建SpringMVC配置文件

在resource目录下创建名为spring-servlet.xml的文件添加MVC命名空间




    
    
    
    
    
2.4 在web.xml中配置SpringMVC的前端控制器

SpringMVC提供了一个名为DispatcherServlet的类(SpringMVC中央处理器-前端控制器),用于拦截用户请求交由SpringMVC处理



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

三、SpringMVC框架使用

在SpringMVC中,将接受用户请求、处理用户请求的类称为Controller(控制器)

3.1 创建控制器

1)创建控制器类

创建一个名为‘com.xsbc.controllers’的包(此包需在Spring注解扫描的范围内);创建一个类(无需做任何继承和实现);在类上添加‘@Controller’注解,声明此类为SpringMVC的控制器;在类上添加‘@RequestMapping("url")’,声明此控制器类的请求url;

@Controller
@RequestMapping("/book")
public class BookController {
    
}

2) 在控制器类中定义处理请求的方法

在一个控制器类中可以定义多个方法处理不同请求;在每个方法上添加@requestMapping("url")用于声明当前方法的请求url;

@Controller
@RequestMapping("/book")
public class BookController {
    @RequestMapping("/add")
    public void addBook(){
        System.out.println("----book  add-----");
    }
    @RequestMapping("/list")
    public void listBooks(){
        System.out.println("----book  list-----");
    }
}

3) 访问

http://localhost:8080/springmvc_demo1/book/addhttp://localhost:8080/springmvc_demo1/book/add

3.2 静态资源配置

静态资源:项目中的HTML、css、js、图片、字体等

1)/*和/的区别

/*表示拦截所有的HTTP请求,包括静态资源请求(html、css、js、图片),包括.jsp请求,都做为控制器类的请求路径来处理;/表示拦截所有的HTTP请求,包括静态资源请求(html、css、js、图片),但不包括.jsp请求,都做为控制器类的请求路径来处理;

2)静态资源的放行配置

在SpringMVC的配置文件,添加如下静态资源执行的配置

    
    
    
    
3.3 前端提交数据到控制器

book-add.jsp 表单的action属性设置控制器类的url和对应方法的url组合路径

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


    Title


    添加图片
    

图书名称:

图书作者:

图书价格:

1)表单提交

表单提交:输入框需要提供name属性,SpringMVC控制器是通过name属性值的;



    Title
    


    添加图片
    

图书名称:

图书作者:

图书价格:

 2)URL提交

超链接(URL)提交:;

3)AJAX提交

AJAX提交:请求行、请求头、请求体都可以用来传值;

 AJAX提交
    
    
    
3.4 控制器接受前端提交的数据

1)请求行传值

表单提交URL提交$.ajax请求的url传值$.post( )/$.get( )中的{ }传值

2)请求头传值

$.ajax({
    ....
    headers:{

    },
    ....
})

3)请求体传值

$.ajax({
    ....
    data:{

    },
    ....
})

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/715981.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号