springWeb介绍、以及SpringWeb的搭建

ssm框架

早期 ssm == spring+strtuts2+mybatis

现在 ssm == spring+springweb+mybatis

springweb运行流程

1、SpringWeb概述

SpringWeb是spring框架中的一个模块,基于Servlet API构建的web框架,springweb是Spring为web层开发提供的一套完备的解决方案。在web层框架经历Strust1、webwork、Strust2等诸多产品历代更选之后的,目前业界普遍选择了springweb作为Java EE 项目web层开发的首选方案。

2、SpringWeb特点

1、SpringWeb是spring家族原生产品,于IOC容器等基础设施无缝对接。

2基于原生的Servlet,提供了一个前端控制器DispatcherServlet,开发者无需额外开发控制器对象。

3、可以自动绑定用户输入,并正确的转换数据类型。

4、代码清新简洁,大幅度提升开发效率。

5、内部组件或程度高,可拔插式组件即插即用。

5、性能卓著,尤其适合现代大型、超大型互联网项目要求。

3、SpringWeb运行流程

1、用户发请求到前端控制器DispatcherServlet,

2、前端控制器DispatcherServlet收到请求调用处理器映射器HandlerMapping

3、HandlerMapping找到具体的处理器(可查找 xml 配置或注解配置),生成处理器对象及处理器拦截器(如果有),再一起返回给 DispatcherServlet。

4、前端控制器DispatcherServlet调用处理器适配器HandlerAdapter,

5、HandlerAdapter经过适配调用具体的处理器Handler/Controller,

6、Controller执行向前端相应

4、SpringWeb组件 

前端控制器:DispatcherServlet,不需要程序员开发,由框架提供,在web.xml进行配置

作用:统一处理请求和相应,是整个流程的控制中心,由它调用执行其他组件处理用户其他请求。

处理器映射器:HandlerMapping,不需要程序员开发,由框架提供

作用:根据请求的url查找处理器Controller

处理器适配器:HandlerAdapter不需要程序员开发,由框架提供

作用:按照特定规则((HandlerAdapter 要求的规则)执行Controller

处理器:Handler也称为Controller,需要程序员开发。

注意:编写 Handler 时按照 HandlerAdapter 的要求去做,这样适配器才可
以去正确执行 Handler

作用:接受用户请求信息,调用业务方法处理请求,也称之为后端控制器。

5、搭建SpringWeb

1、导入依赖 ,在之前的基础上导入SpringWeb的jar包

<!--springWeb-->
 <dependency>
     <groupId>org.springframework</groupId>
     <artifactId>spring-webmvc</artifactId>
     <version>5.2.2.RELEASE</version>
 </dependency>

 2、配置DispatcherServlet,在web.xml文件中,以及配置spring核心请求分发器

  <!--配置前端控制器DispatcherServlet-->
<servlet>
    <servlet-name>application</servlet-name>
    <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
    <init-param>
        <param-name>contextConfigLocation</param-name>
        <param-value>classpath:spring.xml</param-value>
    </init-param>
    <load-on-startup>0</load-on-startup>
</servlet>

<!-- 请求映射 -->
<servlet-mapping>
    <servlet-name>application</servlet-name>
    <url-pattern>/</url-pattern>
</servlet-mapping>

3、开启springWeb注解,在spring.xml文件中

<!--开启 springWeb 注解-->
<mvc:annotation-driven></mvc:annotation-driven>

4、处理器搭建在web层

@RestController:让spring扫描,并创建扫描对象,简单来说就是交给Spring管理IOC容器

@RequestMapping(path = "/loginCtl")处理请求地址映射的注解,可以添加到类或者是方法上@RequestMapping 是一个用来为处理器地址映射的注解,可用于类或方法上. 作用在类上,在整个项目中不能重复,作用在方法上,整个类中不能重复. 常用属性 path,value,method. path 和 value 用来定义地址 method 用来定义请求方式

@RequestMapping(value = "/hello",method = RequestMethod.GET)
@RequestMapping(path= "/hello",method = RequestMethod.POST)

一个简单的web层示例,

package com.ffyc.ssm.web;

import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;


/*
* @RestController  让spring扫描,并创建扫描对象
* @RequestMapping(path = "/loginCtl")  定义类和方法的地址
*
* */


@RestController
@RequestMapping(path = "/loginCtl")//定义类的地址
public class LoginController {

    @RequestMapping(path = "login")//定义方法的地址
    public String login(){

        System.out.println("登录");
        return "success";
    }
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

双非码农

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值