SpringMVC框架②
三、@RequestMapping注解
3、@RequestMapping注解的value属性
必须设置 发送一个请求最直观的表示方式就是一个请求路径
alt+enter 进入接口方法 再用 alte+7 查看里面的属性
value值可以是数组 value={"test","test1"} 只满足任何一个请求地址就会调用此方法
@RequestMapping注解的value属性通过请求的请求地址匹配请求映射 @RequestMapping注解的 value属性是一个字符串类型的数组,表示该请求映射能够匹配多个请求地址 所对应的请求 @RequestMapping注解的value属性必须设置,至少通过请求地址匹配请求映射
<a th:href="@{/testRequestMapping}">测试@RequestMapping的value属性--
>/testRequestMapping</a><br>
<a th:href="@{/test}">测试@RequestMapping的value属性-->/test</a><br>
@RequestMapping(
value = {"/testRequestMapping", "/test"},
method = {RequestMethod.GET, RequestMethod.POST}
)
public String testRequestMapping(){
return "success";
}
4、@RequestMapping注解的method属性
提交表单也有一个method属性 表示请求方式
设置的属性越多那要满足的条件就越多 所以匹配的请求就越精确
@RequestMapping注解的method属性通过请求的请求方式(get或post)匹配请求映射 @RequestMapping注解的method属性是一个RequestMethod类型的数组,表示该请求映射能够匹配 多种请求方式的请求 若当前请求的请求地址满足请求映射的value属性,但是请求方式不满足method属 性,则浏览器报错 405:Request method 'POST' not supported post请求
把参数放在请求体中,格式还是name=value and name=value 安全 慢 数据量比较大
不设置method 就说明任何的请求方式都匹配
<a th:href="@{/test}">测试@RequestMapping的value属性-->/test</a><br>
<form th:action="@{/test}" method="post">
<input type="submit">
</form>
@RequestMapping(
value = {"/testRequestMapping", "/test"},
method = {RequestMethod.GET, RequestMethod.POST}
)
public String testRequestMapping(){
return "success";
}
1、对于处理指定请求方式的控制器方法,SpringMVC中提供了@RequestMapping的派生注解 处理 get请求的映射-->@GetMapping 处理post请求的映射-->@PostMapping 处理put请求的映射-- >@PutMapping 处理delete请求的映射-->@DeleteMapping
2、常用的请求方式有get,post,put,delete但是目前浏览器只支持get和post,若在form表单提 交时,为method设置了其他请求方式的字符 串(put或delete),则按照默认的请求方式get处理 若要 发送put和delete请求,则需要通过spring提供的过滤器HiddenHttpMethodFilter,在 RESTful部分会讲到
5、@RequestMapping注解的params属性(了解)
@RequestMapping注解的params属性通过请求的请求参数匹配请求映射
@RequestMapping注解的params属性是一个字符串类型的数组,可以通过四种表达式设置请求参数和请求映射的匹配关系 "param":要求请求映射所匹配的请求必须携带param
请求参数 "!param":要求请求映射所匹配的请求必须不能携带param请求参数
"param=value":要求请求映射所匹配的请求必须携带param请求参数且param=value "param!=value":要求请求映射所匹配的请求必须携带param请求参数但是param!=value
6、@RequestMapping注解的headers属性(了解)
与params用法一样
@RequestMapping注解的headers属性通过请求的请求头信息匹配请求映射
@RequestMapping注解的headers属性是一个字符串类型的数组,可以通过四种表达式设 置请求头信 息和请求映射的匹配关系 "header":要求请求映射所匹配的请求必须携带
header请求头信息 "!header":要求请求映射所匹配的请求必须不能携带header请求头信 息 "header=value":要求请求映射所匹配的请求必须携带header请求头信息且
header=value "header!=value":要求请求映射所匹配的请求必须携带header请求头信息
且header!=value 若当前请求满足@RequestMapping注解的value和method属性,但是不 满足headers属性,此时页面 显示404错误,即资源未找到
7、SpringMVC支持路径中的占位符(重点)
原始方式:/deleteUser?id=1
REST方式:/deleteUser/1
SpringMVC路径中的占位符常用于RESTful风格中,当请求路径中将某些数据通过路径的方 式传输到服 务器中,就可以在相应的@RequestMapping注解的value属性中通过占位符 {xxx}表示传输的数据,在 通过@PathVariable注解,将占位符所表示的数据赋值给控制器方法的形参
<a th:href="@{/testRest/1/admin}">测试路径中的占位符-->/testRest</a><br>@RequestMapping("/testRest/{id}/{username}")
public String testRest(@PathVariable("id") String id, @PathVariable("username")
String username){
System.out.println("id:"+id+",username:"+username);
return "success";
}
//最终输出的内容为-->id:1,username:admin
此文未完结~~~
相关文章:
SpringMVC框架②
三、RequestMapping注解 3、RequestMapping注解的value属性 必须设置 发送一个请求最直观的表示方式就是一个请求路径 altenter 进入接口方法 再用 alte7 查看里面的属性 value值可以是数组 value{"test","test1"} 只满足任何一个请求地址就会调用此方…...
springboot230基于Spring Boot在线远程考试系统的设计与实现
在线远程考试系统设计与实现 摘 要 信息数据从传统到当代,是一直在变革当中,突如其来的互联网让传统的信息管理看到了革命性的曙光,因为传统信息管理从时效性,还是安全性,还是可操作性等各个方面来讲,遇到…...
盘点:国家智能算力中心
文章目录 1. Main2. My thoughtsReference 1. Main 按照《中国算力白皮书(2022年)》的定义,算力主要分为四部分:通用算力、智能算力、超算算力、边缘算力。通用算力以CPU芯片输出的计算能力为主;智能算力以GPU、FPGA、…...
【C++】7-2 寻找完美数 分数 10
7-2 寻找完美数 分数 10 全屏浏览 切换布局 作者 李祥 单位 湖北经济学院 所有真因子之和小于其本身的数称为亏数。 如:4 的真因子 1、2 之和为 3,小于 4,是亏数。 所有真因子之和大于其本身的数称为盈数。 如:12 的真因子 1…...
基于Mahout实现K-Means聚类
需求分析 需要对数据集进行预处理,选择合适的特征进行聚类分析,确定聚类的数量和初始中心点,调用Mahout提供的K-Means算法进行聚类计算,评估聚类结果的准确性和稳定性。同时,需要对Mahout的使用和参数调优进行深入学习…...
科技的成就(五十七)
535、Machine Learning "1959 年 7 月,塞缪尔首创 Machine Learning 一词。塞缪尔在“Some Studies in Machine Learning Using theGame of Checkers”一文中给 Machine Learning 下了个非正式定义:没有明确编程指令的情况下,能让计算机…...
动态IP代理技术在网络爬虫中的实际使用
目录 一、动态IP代理技术概述 二、动态IP代理技术的优势 三、动态IP代理技术的实际应用 四、注意事项 五、案例分析 六、结论 随着互联网的迅猛发展,网络爬虫成为了获取信息、分析数据的重要工具。然而,在进行大规模爬取时,爬虫常常面临…...
计算机网络:深入探索HTTP
引言: HTTP,全称超文本传输协议(Hypertext Transfer Protocol),是互联网上数据通信的基础。它定义了客户端(如浏览器)和服务器之间如何交互和传输数据。HTTP最初是为了支持Web浏览而设计的&…...
Netty(1)nio
一. NIO 基础 non-blocking io 非阻塞 IO 1. 三大组件 1.1 Channel & Buffer channel 有一点类似于 stream,它就是读写数据的双向通道,可以从 channel 将数据读入 buffer,也可以将 buffer 的数据写入 channel,而之前的 st…...
1.3 vue ui框架-element-ui框架
1 前言 ElementUI是一套基于VUE2.0的桌面端组件库,ElementUI提供了丰富的组件帮助开发人员快速构建功能强大、风格统一的页面。 ElementUI官网 https://element.eleme.io 2 安装 运行命令 cnpm i element-ui -S -S表示只在该项目下安装,不是全局安…...
关于MediaEval数据集的Dataset构建(Text部分-使用PLM BERT)
import random import numpy as np import pandas as pd import torch from transformers import BertModel,BertTokenizer from tqdm.auto import tqdm from torch.utils.data import Dataset import re """参考Game-On论文""" ""&qu…...
QML学习之Text
文本显示是界面开发中的重要内容,在Qt Quick模块中提供了 Text 项来进行文本的显示,其中可以使用 font 属性组对文本字体进行设置: font.bold:是否加粗,取值为true或false font.capitalization:大写策略&a…...
轮转数组(元素位置对调、数据的左旋、右旋)
189. 轮转数组 给定一个整数数组 nums,将数组中的元素向右轮转 k 个位置,其中 k 是非负数 示例 1: 输入: nums [1,2,3,4,5,6,7], k 3 输出: [5,6,7,1,2,3,4] 解释: 向右轮转 1 步: [7,1,2,3,4,5,6] 向右轮转 2 步: [6,7,1,2,3,4,5] 向右轮转 3 步: …...
喜迎乔迁,开启新章 ▏易我科技新办公区乔迁庆典隆重举行
2024年1月18日,易我科技新办公区乔迁庆典在热烈而喜庆的氛围中隆重举行。新办公区的投入使用,标志着易我科技将以崭新姿态迈向新的发展阶段。 ▲ 易我科技新办公区 随着公司业务的不断发展和壮大,为了更好地适应公司发展的需要,…...
多个地区地图可视化
1. 配置Json文件 1.1 获得每个省份的json数据 打开 阿里云数据可视化平台 主页。 在搜索框中输入所需省份。 将json文件下载到本地。 1.2 将各省份的json数据进行融合 打开 geojson.io 主页 点击 open,上传刚刚下载的 json 文件,对多个省份不断…...
学习使用paddle来构造hrnet网络模型
1、首先阅读了hrnet的网络结构分析,了解到了网络构造如下: 参考博文姿态估计之2D人体姿态估计 - (HRNet)Deep High-Resolution Representation Learning for Human Pose Estimation(多家综合)-CSDN博客 最…...
Redis 多线程操作同一个Key如何保证一致性?
单线程模型:Redis 是单线程模型的,它通过一个事件循环来处理所有客户端请求,这意味着 Redis 在任何时刻只会处理一个请求,从而避免了并发访问同一个 Key 的问题。这种设计保证了数据的一致性。 乐观锁(Watchÿ…...
单链表合并
【问题描述】 建立两个升序排列的单链表,表中元素的数据类型是整数,将建立的两个链表合并为 一个新的升序的单链表,并输出显示已合并好的有序的单链表 。 【输入形式】分别输入两组数据,两组数据以回车分隔;每组数据…...
【如何像网吧一样弄个游戏菜单在家里】
GGmenu 个人家庭版游戏、应用管理 桌面图标管理器...
CSS~~
CSS是一门语言,用于控制网页表现 CSS(Cascading Style Sheet):层叠样式表 W3C标准:网页主要由三部分组成 结构:HTML 表现: CSS 行为:JavaScript 1,CSS的导入方式 (1)内联样式 在标签内部使用style属性,属性值是cs…...
OpenClaw资源监控方案:Qwen3-14B镜像运行时显存优化技巧
OpenClaw资源监控方案:Qwen3-14B镜像运行时显存优化技巧 1. 问题背景与挑战 去年在尝试用OpenClaw对接本地部署的Qwen3-14B模型时,我遇到了一个典型问题:当连续处理多个复杂任务时,显存占用会逐渐累积,最终导致OOM崩…...
OpenClaw性能优化指南:Qwen3-14b_int4_awq模型调用加速技巧
OpenClaw性能优化指南:Qwen3-14b_int4_awq模型调用加速技巧 1. 为什么需要性能优化? 上周我尝试用OpenClaw自动处理100份PDF文档时,遇到了严重的性能瓶颈。原本预计2小时完成的任务,实际运行了整整8小时。经过排查发现ÿ…...
从GitHub热门项目到实战:手把手教你复现一篇ICLR‘24时间序列预测论文(附完整代码)
从GitHub热门项目到实战:手把手教你复现一篇ICLR24时间序列预测论文(附完整代码) 在人工智能领域,前沿论文与开源代码的结合正成为推动技术进步的重要动力。GitHub上涌现出大量包含顶会论文和配套实现的仓库,如AI4TS这…...
极验滑动验证码自动化实战:背景提取、缺口定位与Playwright滑动模拟
滑动验证码自动化实战:背景提取、缺口定位与Playwright滑动模拟 一、前言 在爬虫自动化、Web端自动化测试、业务流程自动化等场景中,人机验证是保障系统安全的重要防线,也是自动化流程中最常见的“拦路虎”。极验(Geetest&#…...
OpenAI Agents SDK 中文实战指南:从入门到多代理协作
1. 为什么你需要OpenAI Agents SDK 第一次接触这个SDK时,我正为一个客户设计智能客服系统。传统方案需要写大量if-else逻辑判断用户意图,而Agents SDK的多代理协作机制让我眼前一亮——就像组建了一支各有所长的AI团队,数学问题自动转交数学专…...
嵌入式通信协议设计的7项核心原则与实战优化
1. 嵌入式通信协议设计核心原则在嵌入式系统开发中,设备与PC间的通信协议设计直接影响着整个系统的可靠性、可维护性和扩展性。经过多年实战,我总结了七项关键设计原则,这些原则在资源受限的嵌入式环境中尤为重要。1.1 简单性优先原则固定长度…...
EduCoder实训答案查询站是怎么建起来的?从签到、解锁到数据抓取的全流程复盘
从零构建EduCoder答案查询站的技术实践与思考 去年冬天,我发现身边不少同学在EduCoder平台上刷实训时常常卡壳,而平台自带的答案解锁机制又需要消耗大量金币。作为一名计算机专业的学生兼业余开发者,我萌生了一个想法:能否通过技术…...
WPF MES 产线执行系统:AGV与立库协同控制的核心实现
ERP MES 两套系统源代码 WPF AGV C# WPF开发。 A,WPF MES 上位机产线执行系统。 1, 完整纯源代码; 2, AGV自动调度; 3, SQLSERVER数据库。 带附加文件。 4, WPF各种技术应用。 5, 数…...
微信聊天记录持久化:基于本地解析技术的个人数据管理方案
微信聊天记录持久化:基于本地解析技术的个人数据管理方案 【免费下载链接】WeChatMsg 提取微信聊天记录,将其导出成HTML、Word、CSV文档永久保存,对聊天记录进行分析生成年度聊天报告 项目地址: https://gitcode.com/GitHub_Trending/we/We…...
别再让预制体‘撞衫’了!用MaterialPropertyBlock给每个Unity实例穿上‘定制皮肤’
别再让预制体‘撞衫’了!用MaterialPropertyBlock给每个Unity实例穿上‘定制皮肤’ 在游戏开发中,预制体(Prefab)是提高效率的利器,但当我们需要为大量相同预制体创建不同外观时,传统方法往往面临性能与灵活…...
