springWEB搭建

news2025/1/12 3:45:26

SpringWEB就是spring框架里得一个模块
springMVC介绍
在之前的后端三大架构:
Controller:

控制层, 包含了servlet, 对数据的接收, 处理, 响应

Model:

数据模型, dao, model

VIew:

视图, jsp, 用于将数据添加到html中进行响应

工作流程: 主要是控制层接收到响应之后, 调取dao层将数据响应回来, 然后进行处理, 处理之后交给jsp, jsp随后将数据交给前端来进行显示, 现在我们省略了数据直接与前端进行交互, 省去了与jsp的交互


web层六字方针: 接收, 处理, 响应

一、搭建SpringWeb

  1. 首先导jar包
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-webmvc</artifactId>
<version>5.2.2.RELEASE</version>
</dependency>
  1. 在 web.xml 文件中配置 DispatcherServlet
    配置 spring 核心请求分发器
<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:application.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>
  1. 开启spring-mvc的注解
<mvc:annotation-driven></mvc:annotation-driven>

开注解
在这里插入图片描述

导入spring的配置文件
在这里插入图片描述

  1. 创建我们自己的处理器, 为类,方法定义地址

在这里插入图片描述

  1. 将ssm项目发布到tomcat中访问

二、SpringMVC组件

●DispatcherServlet,他是mvc里的总调度服务器, 他底层是一个servlet,他就是SringMVC中的前端控制器
●HandlerMapping: 他是SpringMvc里的页面控制器, DispatcherServletSpring他只是接收请求, 不知道交给哪个页面控制器来处理, 在选择指定的页面控制器,就交给了HandleMapping来做
●HandlerAdapter:在经过HandlerMapping处理之后, DispatcherServlet就获取到了处理器,但是处理器有多种, 为了方便调用, HandlerAdapter就将处理器包装成处理器适配器, HandlerAdapte调用真正的处理器功能处理方法, 完成功能处理, 返回一个ModelAndView对象(包含模型数据,逻辑视图名)

三、自定义的处理器

  1. 注解

@RestController 类似@Service 这些注解标签 表示此类是控制层类,并且会创建对象放进spring
容容器里
@RequestMapping(path = “/loginCtl”) 用来为类和方法定义映射地址, 必须是整个项目里唯一的

可以使用value=""或者path=""都可以使用来定义对外访问地址

@RequestMapping(path = “/loginCtl”) 在方法上使用时, 还可以添加访问的类型

@RequestMapping(path = "/loginCtl", method=ResquestMethod.POST)
//这样一来就只能是post请求方式来访问了 , 如果没有设置请求方式就都可以访问

对于为方法添加还有@GetMapping与@PostMapping两种

@GetMapping(path=“映射地址”), 另一个同理

  1. 如何获取请求里的数据
    <1>可以使用request对象俩接收,
    req.getParameter(“参数名”)
    这里接收统统是String类型
    在这里插入图片描述
    注意在引入req,resp参数之前要导入jar包
    在这里插入图片描述
    <2>可以直接在参数列表中定义形参接收

此种方法可以帮我们直接左类型的转换
在这里插入图片描述还可以使用@RequestParam(请求参数名来接收), 后面跟方法参数进行绑定

<3>直接使用对象来接收
当要保存,提交表单数量比较多, 可以将所有参数封装到一个对象里面, 通过请求来被对应的方法里的对象参数接收,封装成对象
参数名要和对象里的一样

对象类(封装参数)
在这里插入图片描述
请求:
在这里插入图片描述

要注意类型转化的问题: 如 Date类型
后端要在参数上进行转换
@DateTimeFormat(pattern = “yyyy-MM-dd”)

如果不进行转换就会报400错误:
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/561220.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

CodeForces.1806A .平面移动.[判断可达范围][找步数规律]

题目描述&#xff1a; 题目解读&#xff1a; 给定移动规则以及起始点&#xff0c;终点&#xff1b;分析终点是否可达&#xff0c;可达则输出最小步数。 解题思路&#xff1a; 首先要判定是否可达。画图可知&#xff0c;对于题目给定的移动规则&#xff0c;只能到达起始点(a,b…

行业常识_交换机

文章目录 一、前言二、交换机2.1 什么是交换机&#xff1f;2.2 交换机的作用是什么&#xff1f;2.3 交换机的应用2.4 交换机分类2.5 交换机功能2.6 交换机的带宽 三、总结 一、前言 项目中经常会用到交换机。 交换机有多个网口。 你可以用一根网线&#xff0c;网线一端插入交换…

【学习日记2023.5.23】 之 店铺营业状态模块完善

文章目录 5. 店铺营业状态设置5.1 需求分析和设计产品原型 5.2 代码开发5.2.1 设置营业状态5.2.2 管理端查询营业状态5.2.3 用户端查询营业状态 5.3 功能测试5.3.1 接口文档测试5.3.2 接口分组展示5.3.3 前后端联调测试5.4 代码提交 5. 店铺营业状态设置 5.1 需求分析和设计 产…

chatgpt赋能Python-python_os_remove

Python os.remove(): 删除文件 什么是 Python os.remove()&#xff1f; Python os.remove() 函数是 Python 中用于删除文件的标准库函数之一。 它使用以下语法&#xff1a; os.remove(file)这里的 file 参数是要删除的文件的路径及文件名。 Python os.remove()的工作原理 …

Linux——SNAT与DNAT的应用

一、SNAT的介绍 1&#xff0c;SNAT概述 SNAT&#xff08;SNAT&#xff09;一般指源地址转换 源地址转换是内网地址向外访问时&#xff0c;发起访问的内网ip地址转换为指定的ip地址&#xff08;可指定具体的服务以及相应的端口或端口范围&#xff09;&#xff0c;这可以使内网中…

2024考研《数据结构》复习笔记总览(文末有彩蛋)

前言 数据结构是是计算机专业的必修课&#xff0c;也是计算机考研的必学书目。 随着科技的飞速发展&#xff0c;数据结构的基础性地位不仅没有动摇&#xff0c;反而由于近年来算法工程师的高薪火爆&#xff0c;使得数据结构的重视程序空前高涨。 索引目录 数据结构考研笔记第…

电动力学专题:天线阵简介

电动力学专题&#xff1a;天线阵天线阵是指由多个天线按一定方式组合而成的一个系统&#xff0c;用于接收或发射无线电信号。天线阵可用于雷达、通信、导航和定位等领域&#xff0c;能够大幅度提高系统的灵敏度和方向性&#xff0c;同时也能提高系统的抗干扰能力和分辨率。在实…

fastposter v2.15.0 从繁琐到简单,简洁好用的海报生成器

fastposter v2.15.0 从繁琐到简单&#xff0c;简洁好用的海报生成器 从繁琐到简单&#xff0c;简洁好用的海报生成器 我很高兴向大家推荐一款令人兴奋的工具——Fastposter海报生成器。作为一名开发者&#xff0c;我们深知在项目中创建专业级海报的重要性&#xff0c;但常常面…

MATLAB仿真建模:Simulink和Stateflow的应用和模型设计

第一章&#xff1a;引言 在当今的科学研究和工程领域中&#xff0c;仿真建模是一项非常重要的技术。通过仿真建模&#xff0c;我们可以在计算机上创建模拟真实系统行为的模型&#xff0c;并通过模型的分析和测试来优化系统设计。MATLAB是一种广泛应用于科学和工程领域的强大工…

FPGA——HLS入门-LED闪烁仿真

系列文章目录 文章目录 系列文章目录一、HLS介绍1、什么是HLS2、与VHDL/Verilog有什么关系?3、关键技术局限性 二、Vivado HLS - LED闪烁仿真1、项目配置2、C仿真3、联合仿真 三、总结 一、HLS介绍 1、什么是HLS HLS就是高综合&#xff08;High level Synthesis&#xff09;…

如何开发微信小程序,后端,前端,小程序端,如何部署到腾讯云托管

开发微信小程序是一项非常有趣的任务&#xff0c;它涉及到前端、后端和小程序端的开发。在本文中&#xff0c;我们将介绍如何开发微信小程序&#xff0c;并将其部署到腾讯云托管。 一、前端开发 前端开发是微信小程序开发的第一步。在这一步中&#xff0c;我们需要使用微信小程…

分享几个网内可用的免费的ChatGPT网页版

Chatgpt: 与AI聊天的新体验 随着数字生活的普及和人工智能技术的快速发展&#xff0c;越来越多人希望与机器进行真挚的交流&#xff0c;体验身临其境的感觉。基于这个想法&#xff0c;我们推出了Chatgpt&#xff0c;一款基于自然语言处理技术和深度学习算法的智能聊天机器人&a…

Spark基础学习笔记----RDD检查点与共享变量

零、本讲学习目标 了解RDD容错机制理解RDD检查点机制的特点与用处理解共享变量的类别、特点与使用 一、RDD容错机制 当Spark集群中的某一个节点由于宕机导致数据丢失&#xff0c;则可以通过Spark中的RDD进行容错恢复已经丢失的数据。RDD提供了两种故障恢复的方式&#xff0c…

Linux防火墙之firewalld基础

一、firewalld概述 firewalld防火墙是Centos7系统默认的防火墙管理工具&#xff0c;取代了之前的iptables防火墙&#xff0c;也是工作在网络层&#xff0c;属于包过滤防火墙。 firewalld和iptables都是用来管理防火墙的工具&#xff08;属于用户态&#xff09;来定义防火墙的…

数据结构 之 二叉搜索树 结构

二叉树搜索树的基本属性&#xff1a; 如图所示&#xff1a;二叉搜索树有四个最基本的属性&#xff1a;指向节点的根&#xff08;root&#xff09;&#xff0c;节点中的键&#xff08;key&#xff09;、左指针&#xff08;right&#xff09;、右指针&#xff08;right&#xff…

DELL PowerVault MD3600f存储维修 控制器更换 电池更换

MD3600f 系列存储阵列介绍 MD3600f 系列是采用 2U 机架固定的外部独立磁盘冗余阵列 (RAID) 存储阵列&#xff0c;可容纳多达 12 个 3.5 英寸或 24 个 2.5 英寸的 6.0-Gbps 串行连接SCSI (SAS) 磁盘。 MD3600f 系列存储阵列可以使用 MD1200 系列扩展机柜以菊花链式连接&#xff…

解决:在 Router 中父级未引入单文件组件而且 children 中的单文件组件不能在页面展示的问题

1、问题展示&#xff1a; 其一、问题描述&#xff1a; 在 router 中父级未引入单文件组件&#xff0c;而只是写了其它配置&#xff0c;但在其 children 中写了配置且引入了单文件组件而未能在页面中展示&#xff1b; 其二、代码&#xff1a; // 某一块的静态路由管理 {path…

2021下半年

2021下半年 a d a c b 阶码是纯整数&#xff0c;尾数是纯小数 对于阶码&#xff1a; 对于尾数&#xff1a; 选b c c a c b c b 归属于受委托方 a b c a 前向传播 反向传播&#xff0c;求关键路径 b b 关键路径上的活动松弛时间为0 c 中缀式&#xff1a;需…

chatgpt赋能Python-python_namedtuple

Python中的namedtuple 在Python中&#xff0c;namedtuple是一个方便且易于使用的数据结构&#xff0c;可以有效地处理元组数据。 它是Python标准库collections中一个实用的类&#xff0c;可以创建一个具有命名属性的元组&#xff0c;类似于一个简单的类对象。namedtuple的属性…

Linux防火墙iptables(下)

一、通用匹配 1&#xff0c;协议匹配 2&#xff0c;地址匹配 3&#xff0c;接口匹配 二、隐含匹配 1.端口匹配 2&#xff0c;TCP标志位匹配 3&#xff0c;ICMP类型匹配 ICMP类型可以是字符串、数字代码 ICMP类型含义Echo-Request &#xff08;代码为8&#xff09;表示请求…