SpringMVC (一)基礎

目錄

SpringMVC

一 簡單使用

1 新建模塊選擇指定參數

2 創建實現類

3 將項目啟動

4 運行結果:在瀏覽器當中響應執行

二 RequestMapping

三 請求限定


SpringMVC

SpringMVC是Spring的web模塊,用來開發Web應用,SpringMVC應用最終作為B/S,C/S模式下的Server端,Web應用的核心是處理HTTP響應。

Spring Web MVC 是構建在 Servlet API 上的原始 Web 框架,已被包含在內 在 Spring Framework 中。正式名稱“Spring Web MVC”, 來自其源模塊的名稱 (spring-webmvc)、 但它更通常被稱為 “Spring MVC”。

一 簡單使用

1 新建模塊選擇指定參數

2 創建實現類

package org.example.spring04mvc.controller;import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;/*** - @Controller:* 標記類作為控制器,處理HTTP請求。* - @ResponseBody:* 標記方法返回的數據直接寫入HTTP響應體中,無需額外的處理。* - @RequestMapping:* 標記方法為控制器處理請求的方法。*/
@Controller
public class helloController {@ResponseBody@RequestMapping("/hello")public String hello() {return "hello SpringMVC";}
}

@RestController?注解

  • 作用@RestController?是 Spring 4.0 引入的組合注解,相當于?@Controller?+?@ResponseBody

    • @Controller:標識該類為 Spring MVC 的控制器。

    • @ResponseBody:將方法的返回值直接寫入 HTTP 響應體(通常是 JSON 或字符串),而不是跳轉到視圖頁面。

//@ResponseBody
//@Controller@RestController
public class helloController {@RequestMapping("/hello")public String hello() {return "hello SpringMVC";}}

3 將項目啟動

package org.example.spring04mvc;import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.context.ConfigurableApplicationContext;@SpringBootApplication
public class Spring04MvcApplication {public static void main(String[] args) {SpringApplication.run(Spring04MvcApplication.class, args);}
}

4 運行結果:在瀏覽器當中響應執行

補充修改端口:

二 RequestMapping

路徑映射:將方法與路徑進行綁定,訪問指定路徑就執行指定方法進行處理。

路徑位置通配符:

優先級:精確匹配 > ?> * > **

*匹配任意多個字符
**匹配任意多層路徑
匹配人以單個字符

三 請求限定

在Spring MVC中,請求限定(Request Mapping)是指通過特定的條件將HTTP請求映射到對應的控制器方法進行處理。主要通過@RequestMapping及其衍生注解實現,以下是部分的請求限定方式:

package org.example.spring04mvc.controller;import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RestController;@RestController
public class RequestMappingControllerLimit {//請求方式@RequestMapping(value = "/limit", method = RequestMethod.DELETE)public String limit1() {return "limit1";}//請求參數@RequestMapping(value = "/limit2", params = {"name", "age=18"})public String limit2() {return "limit2";}//請求頭@RequestMapping(value = "/limit3", headers = {"name"})public String limit3() {return "limit3";}//請求內容類型(下面舉例表名瀏覽器必須攜帶json格式格式的數據)@RequestMapping(value = "/limit4", consumes = {"application/json"})public String limit4() {return "limit4";}//響應內容類型(下面舉例瀏覽器只能接受json格式的數據)@RequestMapping(value = "/limit5", produces = "text/html;charset=utf-8")public String limit5() {return "<h2>limit5</h2>";}
}

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/web/72069.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/72069.shtml
英文地址,請注明出處:http://en.pswp.cn/web/72069.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

【機器人-基礎知識】歐拉角、旋轉矩陣和四元數

1. 歐拉角 1.1. 歐拉角的定義 歐拉角是一組三個角度,用于描述一個剛體在三維空間中的定向關系。具體來說,它們表示從一個固定參考坐標系到剛體坐標系的一系列旋轉。常見的定義方式是將總體旋轉分解為三個連續的簡單旋轉,每次旋轉都繞著當前坐標系的某一固定軸進行。 例如,…

xxl-job部署在docker-destop,實現定時發送預警信息給指定郵箱

XXL-JOB XXL-JOB是一個分布式任務調度平臺&#xff08;XXL是作者徐雪里姓名拼音的首字母&#xff09;&#xff0c;其核心設計目標是開發迅速、學習簡單、輕量級、易擴展。 源碼倉庫地址&#xff1a;https://github.com/xuxueli/xxl-job 源碼結構&#xff1a; 系統架構 在xxl-j…

大數據學習(63)- Zookeeper詳解

&&大數據學習&& &#x1f525;系列專欄&#xff1a; &#x1f451;哲學語錄: 用力所能及&#xff0c;改變世界。 &#x1f496;如果覺得博主的文章還不錯的話&#xff0c;請點贊&#x1f44d;收藏??留言&#x1f4dd;支持一下博主哦&#x1f91e; &#x1f…

【數據結構】3順序表

0 章節 &#xff12;&#xff0e;&#xff11;到&#xff12;&#xff0e;&#xff13;小節。 理解與表達線性表的邏輯結構&#xff1b; 線性表的結構、結構與操作&#xff1b; 順序表的表示與實現&#xff1b;順序表應用&#xff1b; 重點 線性表概念、順序表定義運算與實現&a…

CUDA編程之OpenCV與CUDA結合使用

OpenCV與CUDA的結合使用可顯著提升圖像處理性能。 一、版本匹配與環境配置 CUDA與OpenCV版本兼容性? OpenCV各版本對CUDA的支持存在差異&#xff0c;例如OpenCV 4.5.4需搭配CUDA 10.0?2&#xff0c;而較新的OpenCV 4.8.0需使用更高版本CUDA?。 需注意部分模塊&#xff08;…

WPF從初學者到專家:實戰項目經驗分享與總結

WPF從初學者到專家&#xff1a;實戰項目經驗分享與總結 一、前言二、WPF 基礎概念與入門2.1 什么是 WPF2.2 XAML 基礎2.3 數據綁定基礎 三、第一個 WPF 項目&#xff1a;簡單的待辦事項列表3.1 項目需求分析3.2 項目搭建與界面設計3.3 業務邏輯實現 四、中級項目&#xff1a;音…

一學就會的深度學習基礎指令及操作步驟(3)模型訓練驗證

文章目錄 模型訓練驗證損失函數和優化器模型優化訓練函數驗證函數模型保存 模型訓練驗證 損失函數和優化器 loss_function nn.CrossEntropyLoss() # 損失函數 optimizer Adam(model.parameters()) # 優化器&#xff0c;優化參數模型優化 獲得模型所有的可訓練參數&#x…

Spring Boot 注解大全:全面解析與實戰應用

目錄 一、Spring Boot 啟動與配置相關注解 1.1 SpringBootApplication 1.2 EnableAutoConfiguration 1.3 Configuration 1.4 ComponentScan 二、依賴注入與組件管理注解 2.1 Component 2.2 Service 2.3 Repository 2.4 Controller 2.5 RestController 2.6 Autowired…

【語料數據爬蟲】Python爬蟲|批量采集征集意見稿數據(1)

前言 本文是該專欄的第5篇,后面會持續分享Python爬蟲采集各種語料數據的的干貨知識,值得關注。 在本文中,筆者將主要來介紹基于Python,來實現批量采集“征集意見稿”數據。同時,本文也是采集“征集意見稿”數據系列的第1篇。 采集相關數據的具體細節部分以及詳細思路邏輯…

企業招聘能力提升之道:突破困境,精準納才

企業招聘能力提升之道&#xff1a;突破困境&#xff0c;精準納才 在企業運營的廣袤版圖中&#xff0c;招聘工作無疑是一塊至關重要的拼圖。然而&#xff0c;不少企業在這片領域中舉步維艱&#xff0c;盡管投入了海量的時間與精力&#xff0c;收獲的成果卻不盡人意。面試環節仿…

AI對前端開發的沖擊

Cursor cursor新版本0.46版本號中有部分是改成了新布局其實 Agent 和 Edit 和 Composer 是一樣的&#xff0c;為了方便大家使用&#xff0c;我們把它們合并了&#xff0c;Edit 相當于普通模式下的 Composer&#xff0c;Agent 就是代理模式。 快捷鍵ctrli、ctrll、ctrlk 4o適合…

java中如何把json轉化的字符串再轉化成json格式

使用org.json庫 首先&#xff0c;確保你的項目中已經包含了org.json庫。如果你使用Maven&#xff0c;可以在pom.xml中添加以下依賴&#xff1a; <dependency><groupId>org.json</groupId><artifactId>json</artifactId><version>20210307…

泛型、泛型上限、泛型下限、泛型通配符

DAY8.1 Java核心基礎 泛型 Generics 是指在類定義時不指定類中信息的具體數據類型&#xff0c;而是用一個標識符來代替&#xff0c;當外部實例化對象時再指定具體的數據類型。 在定義類或者接口時不明確指定類中信息的具體數據類型&#xff0c;在實例化時再來指定具體的數據類…

Win10 下搭建免費的 FTP 服務器 FileZilla

一、概述 FileZilla 服務器是一個免費的開源FTP和FTPS服務器&#xff0c;是根據GNU通用公共許可證條款免費發布的開源軟件。FileZilla支持FTP、FTPS、SFTP等文件傳輸協議&#xff0c;相比其他FTP服務器&#xff0c;最大的優勢是FileZilla自由(免費)。 FileZilla的官網地址是&a…

C/C++中對字符處理的常用函數

C語言中的 ctype.h 頭文件提供了一系列字符分類和轉換函數&#xff0c;用于高效處理字符相關操作。這些函數通過接受 int 類型參數&#xff08;需為 unsigned char 或 EOF &#xff08;-1&#xff09;值&#xff09;&#xff0c;返回非零值表示條件正確&#xff0c;返回0表示錯…

雙指針算法介紹+算法練習(2025)

一、介紹雙指針算法 雙指針&#xff08;或稱為雙索引&#xff09;算法是一種高效的算法技巧&#xff0c;常用于處理數組或鏈表等線性數據結構。它通過使用兩個指針來遍歷數據&#xff0c;從而減少時間復雜度&#xff0c;避免使用嵌套循環。雙指針算法在解決諸如查找、排序、去重…

【每日八股】計算機網絡篇(四):HTTP

目錄 HTTP 與 HTTPS 的區別&#xff1f;HTTPS 加密與認證的過程&#xff1f;ClientHelloServerHello客戶端回應服務端回應 HTTPS 一定安全可靠嗎&#xff1f;HTTPS 狀態碼的含義&#xff1f;HTTP 緩存有哪些實現方式&#xff1f;HTTP 1.0、HTTP 1.1、HTTP 2.0 和 HTTP 3.0 的區…

TMS320F28P550SJ9學習筆記10:軟件模擬I2C通信_驅動1.3寸OLED

現在有了具體的I2C通信器件&#xff0c;一塊1.3寸OLED屏幕&#xff0c;今日嘗試移植配置一下: 本文主要講的是&#xff0c;使用軟件模擬I2C通信 文章提供測試代碼講解、完整工程下載、測試效果圖 目錄 前置文章&#xff1a; I2C通信引腳&#xff1a; 軟件I2C 引腳的初始化&am…

spring boot 發送郵件驗證碼

一、前置需求 1、準備郵箱 2、登錄授權碼 qq郵箱在–>設置–>賬號POP3/IMAP/SMTP/Exchange/CardDAV/CalDAV服務 開啟服務 二、發送郵件 1、簡單郵件 包含郵件標題、郵件正文 2、引入mail啟動器 <dependency><groupId>org.springframework.boot</groupI…

塔能科技:智能機箱,為城市安防 “智” 造堅實堡壘

在當今智慧城市建設的浪潮中&#xff0c;城市安防面臨著諸多挑戰。設備管理難&#xff0c;眾多分散的安防設備猶如一盤散沙&#xff0c;難以實現高效統一的管控&#xff1b;數據傳輸不穩定&#xff0c;關鍵時刻信息的延遲或丟失&#xff0c;可能導致嚴重后果。這些問題嚴重制約…