SpringMVC常用注解與使用方法SpringMVC簡介

      網(wǎng)友投稿 759 2022-05-30

      SpringMVC中常用注解與使用方法

      MVC簡介

      SpringMVC簡介

      SpringMVC中的常用注解

      @GetMapping

      @RequestParam

      @RequestBody

      @PathVariable

      @RequestHeader

      @CookieValue

      @ModelAttribute

      @SessionAttributes

      新注解

      @RequestMapping?和 ?@GetMapping @PostMapping 區(qū)別

      如果本篇博客對您有一定的幫助,大家記得留言++哦。

      MVC簡介

      MVC 全名是 Model View Controller,是模型(model)-視圖(view)-控制器(controller)的縮寫, 是一種用于設(shè)計創(chuàng)建 Web 應(yīng)用程序表現(xiàn)層的模式。

      Model(模型): 通常指的就是我們的數(shù)據(jù)模型。作用一般情況下用于封裝數(shù)據(jù)。

      View(視圖): 通常指的就是我們的 jsp 或者 html。作用一般就是展示數(shù)據(jù)的。 通常視圖是依據(jù)模型數(shù)據(jù)創(chuàng)建的。

      Controller(控制器): 是應(yīng)用程序中處理用戶交互的部分。作用一般就是處理程序邏輯的。

      SpringMVC簡介

      SpringMVC 是一種基于 Java 的實現(xiàn) MVC 設(shè)計模型的請求驅(qū)動類型的輕量級 Web 框架,屬于 Spring FrameWork 的后續(xù)產(chǎn)品,已經(jīng)融合在 Spring Web Flow 里面。Spring 框架提供了構(gòu)建 Web

      應(yīng)用程序的全功能 MVC 模塊。使用 Spring 可插入的 MVC 架構(gòu),從而在使用 Spring 進行 WEB 開發(fā)時,可以選擇使用 Spring 的 Spring MVC 框架或集成其他 MVC 開發(fā)框架。

      SpringMVC 已經(jīng)成為目前最主流的 MVC 框架之一,并且隨著 Spring3.0 的發(fā)布,已成為最優(yōu)秀的 MVC 框架。

      SpringMVC中的常用注解

      @GetMapping

      作用:用于建立請求URL和處理請求方法之間的對應(yīng)關(guān)系

      可以出現(xiàn)在類上,請求URL的第一級訪問目錄

      可以出現(xiàn)在方法上,請求URL的第二級訪問目錄

      value:用于指定請求的URL。它和path屬性的作用是一樣的

      method:用于指定請求的方式

      params:用于指定限制請求參數(shù)的條件

      @Controller

      //@RequestMapping("SpringMVC/")

      public class HelloController {

      //請求方法為get 請求參數(shù)必須有username

      @RequestMapping(value = "/hello",method = RequestMethod.GET,params = {"username"})

      //@RequestMapping("/hello")

      public String sayHello(){

      System.out.println("SpringMVC hello~~~");

      return "success";

      }

      }

      @RequestParam

      作用:把請求中指定名稱的參數(shù)給控制器中的形參賦值

      value:請求參數(shù)的名稱

      required:請求參數(shù)中必須提供此參數(shù)。默認值:true,表示必須提供,如果不提供就報錯。

      @RequestMapping("/testRequestParam")

      //RequestParam --更名

      // 屬性 value=別名 required=必須含有的參數(shù)

      public String testRequestParam(@RequestParam(value = "username") String name){

      System.out.printf(name);

      System.out.println("testRequestParam執(zhí)行了~~~");

      return "success";

      }

      @RequestBody

      作用:用于獲取請求體內(nèi)容。直接使用得到key=value&key=vaule...結(jié)構(gòu)的數(shù)據(jù)。get請求方式不適用

      required:是否必須有請求體。當(dāng)取值為true時,get請求會報錯。如果取值為false,get請求得到是null。

      @RequestMapping("/testRequestBody")

      //RequestBody 獲取請求體中的內(nèi)容 如:username=benshan&password=98989&money=200

      public String testRequestBody(@RequestBody String body){

      System.out.println("testRequestBody執(zhí)行了~~~");

      System.out.println(body);

      return "success";

      }

      SpringMVC中常用注解與使用方法SpringMVC簡介

      @PathVariable

      作用:用于綁定URL中的占位符。url中有/delete/{id},{id}就是占位符。

      @RequestMapping("/testPathVariable/{id}")

      //PathVariable使用Restful風(fēng)格,結(jié)構(gòu)清晰,拓展方便

      public String testPathVariable(@PathVariable(value = "id") String id){

      System.out.println("testPathVariable~~~");

      System.out.println(id);

      return "success";

      }

      @RequestHeader

      作用:用于獲取請求消息頭

      value 提供消息頭名稱

      required:是否必須有此消息頭

      @RequestMapping("/testRequestHeader")

      //testRequestHeader獲取請求頭的值

      public String testRequestHeader(@RequestHeader(value = "Accept") String header){

      System.out.println("testRequestHeader~~~");

      System.out.println(header);

      return "success";

      }

      @CookieValue

      作用:用于把指定cookie名稱的值傳入控制器方法參數(shù)

      value:指定cookie的名稱

      required:是否必須有此cookie

      @RequestMapping("/testCookieValue")

      //testRequestHeader獲取請求頭的值

      public String testCookieValue(@CookieValue(value = "JSESSIONID") String cookie){

      System.out.println("testCookieValue~~~");

      System.out.println(cookie);

      return "success";

      }

      @ModelAttribute

      作用:可以修飾方法和參數(shù)。出現(xiàn)在方法上,表示當(dāng)前方法會在控制器的方法執(zhí)行之前執(zhí)行,先執(zhí)行。出現(xiàn)在參數(shù)上,獲取指定的數(shù)據(jù)給參數(shù)賦值

      value 用于獲取數(shù)據(jù)的key

      @RequestMapping("/testModelAttribute")

      public String testModelAttribute(){

      System.out.println("testModelAttribute~~~");

      return "success";

      }

      @ModelAttribute

      //在控制器執(zhí)行之前 執(zhí)行

      public void showUser(){

      System.out.println("showUser執(zhí)行了~~~");

      }

      @SessionAttributes

      作用:用于多次執(zhí)行控制器方法間的參數(shù)共享

      value 用于指定存入的屬性名稱

      type:用于指定存入的數(shù)據(jù)類型

      新注解

      @RequestMapping?和 ?@GetMapping @PostMapping 區(qū)別

      @GetMapping是一個組合注解,是@RequestMapping(method = RequestMethod.GET)的縮寫。

      @PostMapping是一個組合注解,是@RequestMapping(method = RequestMethod.POST)的縮寫。

      如果本篇博客對您有一定的幫助,大家記得留言++哦。

      MVC Spring

      版權(quán)聲明:本文內(nèi)容由網(wǎng)絡(luò)用戶投稿,版權(quán)歸原作者所有,本站不擁有其著作權(quán),亦不承擔(dān)相應(yīng)法律責(zé)任。如果您發(fā)現(xiàn)本站中有涉嫌抄襲或描述失實的內(nèi)容,請聯(lián)系我們jiasou666@gmail.com 處理,核實后本網(wǎng)站將在24小時內(nèi)刪除侵權(quán)內(nèi)容。

      上一篇:如何通過 AirPlay 鏡像您的 Mac 顯示器?
      下一篇:Java同步機制總結(jié)--synchronized關(guān)鍵字的使用
      相關(guān)文章
      亚洲欧洲无卡二区视頻| 亚洲一卡2卡3卡4卡乱码 在线 | 亚洲人成自拍网站在线观看| 亚洲精品福利网泷泽萝拉| 亚洲国产精品无码专区在线观看 | 亚洲综合国产成人丁香五月激情| 亚洲婷婷综合色高清在线| 亚洲精品偷拍无码不卡av| 久久精品国产亚洲av日韩| 91亚洲va在线天线va天堂va国产| 亚洲国产精品SSS在线观看AV| 亚洲精品无码永久中文字幕| 国产精一品亚洲二区在线播放| 亚洲人成网站在线播放vr| 亚洲精品中文字幕无码A片老| 亚洲а∨天堂久久精品9966| 亚洲中文字幕无码久久| 亚洲综合成人婷婷五月网址| 中文字幕无码精品亚洲资源网久久| 色噜噜亚洲男人的天堂| 亚洲日韩中文字幕一区| 亚洲AV成人片无码网站| 亚洲国产精品专区在线观看| 亚洲人AV在线无码影院观看| 亚洲精品精华液一区二区| 在线观看亚洲精品专区| 亚洲国产精品狼友中文久久久| 亚洲熟妇少妇任你躁在线观看无码| 久久国产成人精品国产成人亚洲| 亚洲av成人一区二区三区观看在线| 国产亚洲人成在线播放| 亚洲日韩国产一区二区三区| 亚洲色欲色欲www在线丝| 久久久久亚洲精品美女| 亚洲色欲或者高潮影院| 亚洲人精品亚洲人成在线| 亚洲国产无线乱码在线观看 | 亚洲AV无码成人精品区天堂| 亚洲一区精品中文字幕| 亚洲AV无码成人专区| 亚洲最大视频网站|