精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

在SpringBoot項目中這幾個注解你們還用嗎?

開發(fā) 前端
SpringMVC會自動將請求URI中的占位符數據綁定到當前ProductDTO對象上,這個綁定與@ModelAttribute注解沒有關系。

環(huán)境:SpringBoot3.3.0

1. 簡介

在SpringBoot應用開發(fā)中,傳統(tǒng)的請求屬性處理方式如@ModelAttribute,@SessionAttribute,@RequestAttribute以及RedirectAttributes似乎用的越來越少了,但是在一些特定場景下它們發(fā)揮著不可或缺的作用尤其是當涉及到表單提交、會話狀態(tài)管理和重定向屬性傳遞時。

  • @ModelAttribute:主要用于綁定請求中的數據到方法參數或模型屬性上,常用于處理表單提交,使得復雜的對象綁定變得簡單直接。它允許你預處理傳入的數據,或者初始化一個命令對象供表單使用。
  • @SessionAttribute:用于從HttpSession中存取屬性,這對于存儲非敏感的用戶信息或臨時數據非常有用,比如用戶設置或購物車信息。
  • @RequestAttribute:處理單一請求上下文,允許你在控制器間通過HttpServletRequest傳遞自定義屬性,適合傳遞那些不需要跨請求持久化的數據。
  • RedirectAttributes:是在執(zhí)行重定向操作時用來傳遞閃存屬性的利器,這些屬性在重定向后的一次請求中可用,之后自動移除,非常適合于向用戶展示操作成功或失敗的消息,同時保持URL的干凈。

接下來將詳細接上上面幾個注解及類的使用。

2. 實戰(zhàn)案例

2.1 @ModelAttribute

該注解可用于方法參數及方法上;

用于方法參數

@GetMapping("/product/{cateId}/{id}")
public ProductDTO test(@ModelAttribute ProductDTO dto) {
  return dto ;
}

圖片圖片

首先,SpringMVC會自動將請求URI中的占位符數據綁定到當前ProductDTO對象上,這個綁定與@ModelAttribute注解沒有關系。而這里注解的作用是將當前ProductDTO對象綁定到模型數據中,接下來如果你使用的thymeleaf則可以直接在頁面中訪問,如下示例:

@GetMapping("/product/{cateId}/{id}")
public String test(@ModelAttribute ProductDTO dto) {
  return "modelattribute" ;
}

在頁面中直接訪問ProductDTO;

<div th:if="${productDTO}">
  <ul>
    <li>cateId: <a th:text="${productDTO.cateId}"></a></li>
    <li>id: <a th:text="${productDTO.id}"></a></li>
  </ul>
</div>

頁面顯示

圖片圖片

在上面你看到了,默認訪問的key是當前類型的首字母改為小寫,我們可以通過配置屬性修改默認key

public String test(@ModelAttribute("dto") ProductDTO dto)

這樣在頁面中訪問的key將是:dto。

用于方法

@GetMapping("/product/{cateId}/{id}")
public String test() {
  return "modelattribute" ;
}
@ModelAttribute("dto")
public ProductDTO dto(ProductDTO dto) {
  System.out.println("dto....") ;
  return dto ;
}

將注解用于方法上后,當前的Controller中的所有接口都會先執(zhí)行該方法將請求中的參數信息綁定到ProductDTO對象中,最后將該dto綁定到模型數據上。通過上面的配置你在頁面上一樣也可以訪問該對象數據。

2.2 @SessionAttribute

該注解只能用于方法參數上。

該注解的作用用于讀取session中的數據到當前的參數中,如下示例:

@GetMapping("/user")
@ResponseBody
public User user(@SessionAttribute("user") User user) {
  return user ;
}
// 模擬登錄后將User對象存入Session中
@GetMapping("/login")
@ResponseBody
public String login(HttpSession session) {
  session.setAttribute("user", new User(666L, "Admin")) ;
  return "login success" ;
}

這里會讀取Session中key=user的數據到當前User對象中,你需要先登錄,然后再訪問/user接口。

如果session中沒有user,那么程序將會報錯

圖片圖片

錯誤提示,session對象中沒有user屬性。通過如下方式設置不是必須的;

public User user(@SessionAttribute(value = "user", required = false) User user)

也可以將參數設置為Optional;

public User user(@SessionAttribute("user") Optional<User> user)

通過上面2中方式設置,在Session中不存在對應的屬性時也不會報錯。

注:還有一個@SessionAttributes注解,該注解可以用于類上。

2.3 @RequestAttribute

該注解同樣只能用于方法參數上。

與 @SessionAttribute 類似,你也可以使用 @RequestAttribute 注解來訪問先前創(chuàng)建的請求屬性(例如,由 Servlet Filter或 HandlerInterceptor 創(chuàng)建的屬性),如下示例:

先定義一個Filter,該Filter作用是向Request中設置值;

@Component
public class UserFilter extends OncePerRequestFilter {


  @Override
  protected void doFilterInternal(HttpServletRequest request, HttpServletResponse response, FilterChain filterChain)
      throws ServletException, IOException {
    request.setAttribute("user", new User(888L, "Guest")) ;
    filterChain.doFilter(request, response) ;
  }
}

接下來在Controller中通過@RequestAttribute訪問user屬性。

@GetMapping("/user")
@ResponseBody
public User user(@RequestAttribute("user") Optional<User> user) {
  return user.orElse(new User()) ;
}

圖片圖片

與@SessionAttribute一樣,參數可以通過Optional設置不是必須的。

2.4 RedirectAttributes

當頁面通過redirect進行跳轉時,可以通過該類定義在接口方法參數中,將數據保存到該對象中后,你就可以在調整到的頁面中使用配置的屬性了,如下示例:

@GetMapping("")
public String index(RedirectAttributes ra) {
  // 將你需要的數據存入該對象中
  ra.addFlashAttribute("message", "hello") ;
  // redirect其它頁面
  return "redirect:/page/tm" ;
}
@GetMapping("tm")
public String tm(RedirectAttributes ra) {
  return "test" ;
}

test.html頁面如下:

<body>
  <h1>Test Page</h1>
  <div th:if="${message}">
    <h2 th:text="${message}" />
  </div>
</body>

訪問上面的/page,將redirec到最終的test.html頁面;

圖片圖片

redirect過來后我們可以訪問到配置的數據。

責任編輯:武曉燕 來源: Spring全家桶實戰(zhàn)案例源碼
相關推薦

2021-10-27 10:07:59

GitHub代碼開發(fā)者

2024-07-01 08:31:14

Spring工具類代碼

2021-06-11 13:59:22

CSS原子類

2024-08-19 01:10:00

RedisGo代碼

2022-11-28 10:24:10

Spring更新JVM

2024-07-10 10:08:36

項目多表關聯(lián)哈希

2021-03-30 10:46:42

SpringBoot計數器漏桶算法

2022-08-02 10:01:42

架構

2021-03-23 08:39:27

SpringBootRedis管道技術

2022-04-07 07:36:04

APIJava 8JWT

2019-03-27 09:40:49

程序員技能開發(fā)者

2022-07-12 12:05:22

JavaSemaphore

2020-10-27 14:15:42

SpringBoot

2023-08-04 07:22:32

SpringBoot項目

2017-09-23 15:17:21

散熱筆記本電腦藍屏

2020-10-21 09:19:27

Flutter開源項目

2020-01-30 17:58:56

GitHub代碼開發(fā)者

2017-11-06 16:32:53

PythonC++Java

2024-09-10 09:05:12

SpringREST并發(fā)

2019-02-28 20:20:43

Python技巧編程語言
點贊
收藏

51CTO技術棧公眾號

亚洲免费观看视频| 免费不卡在线视频| 精品一区二区三区四区在线| 久久久999视频| 久久久久久久影视| 久久电影网电视剧免费观看| 欧美成人在线免费| 精品人妻一区二区三区日产乱码卜| 在线观看欧美日韩电影| 中文字幕亚洲精品在线观看| 国产精品12| 亚洲性猛交富婆| 国产真实久久| 国产亚洲精品久久久久久牛牛| 中文字幕一区二区在线观看视频 | 玩弄中年熟妇正在播放| 成人18在线| 成人小视频免费观看| 国产精品久久一区主播| 国产在线视频在线观看| 欧美国产小视频| 日韩av最新在线观看| 在线免费看污网站| 五月激情久久| 五月天中文字幕一区二区| 一区二区三区偷拍| 久久这里精品| 99久久精品国产一区二区三区| 成人激情视频网| 天天射天天干天天| 国产一区二区精品| 久久国产色av| 中文字幕求饶的少妇| 免费视频亚洲| 亚洲精品二三区| 超碰人人cao| 综合久久av| 欧美日韩一卡二卡三卡| 99精品视频在线看| 川上优av中文字幕一区二区| 一区二区三区欧美在线观看| 亚洲午夜精品久久久久久浪潮| 三级毛片在线免费看| 成人h动漫精品一区二区| 亚洲r级在线观看| 亚洲最大成人在线视频| 视频一区免费在线观看| 欧美一区二区三区精品电影| 国产一级免费av| 中文字幕亚洲综合久久五月天色无吗''| 亚洲欧美国产一区二区三区| 亚洲天堂美女视频| 国产成人一二片| 欧美精品一区二区在线观看| 91视频福利网| 欧美精品影院| 日韩美女主播在线视频一区二区三区 | 在线观看黄色av| 国产精品色哟哟网站| 亚洲成人av动漫| www视频在线观看免费| 国产日产亚洲精品系列| 日本不卡二区| 91在线网址| 国产精品白丝在线| 三级网在线观看| 91香蕉在线观看| 亚洲国产视频网站| 青青青免费在线| 中文字幕在线免费观看视频| 欧美午夜精品伦理| 国产自偷自偷免费一区| 青青伊人久久| 欧美一区二区精品久久911| 丰满人妻一区二区三区53视频| 亚洲大奶少妇| 亚洲精品电影在线| 国产精品情侣呻吟对白视频| 99成人超碰| 欧美大片在线影院| 五月婷婷色丁香| 蜜臀av性久久久久蜜臀aⅴ四虎| 国产日韩精品在线观看| 精品久久无码中文字幕| 成人国产精品视频| 日本电影一区二区三区| 欧美69xxx| 亚洲aaa精品| 韩国一区二区av| 国产亚洲高清一区| 亚洲精品电影在线观看| 日韩一区二区三区四区视频| 综合激情视频| 欧美综合在线观看| 在线观看毛片av| 丁香一区二区三区| 欧洲国产精品| 羞羞视频在线观看免费| 色一情一乱一乱一91av| 欧美午夜精品理论片| 欧美美女在线直播| 深夜福利一区二区| 日本一区二区欧美| 久草在线在线精品观看| 国产综合 伊人色| 视频免费一区| 欧美日韩中国免费专区在线看| 国内国产精品天干天干| 欧美sss在线视频| 日韩一区二区三区国产| 日韩欧美亚洲视频| 国产呦精品一区二区三区网站 | 精品国产中文字幕第一页| 欧美成人手机在线| 日本成人一级片| 成人avav影音| 浴室偷拍美女洗澡456在线| 亚洲精品中文字幕| 精品国精品自拍自在线| 国产免费嫩草影院| 久久精品1区| 国产精品亚洲一区| 成人免费网站在线观看视频| 在线精品亚洲一区二区不卡| 性色av蜜臀av浪潮av老女人| 亚洲色图国产| 国产视频999| 国产专区在线播放| 欧美日韩性视频| 日本不卡视频一区| 欧美特黄a级高清免费大片a级| 国产精品国产福利国产秒拍| 天堂在线中文| 亚洲第一搞黄网站| 日本中文字幕精品| 一精品久久久| 亚洲综合自拍一区| 成人片在线看| 91精品国产全国免费观看| 99国产精品无码| 麻豆一区二区在线| 色综合影院在线观看| 欧美aa视频| 亚洲美女激情视频| wwwwww国产| 2024国产精品| 一本大道熟女人妻中文字幕在线 | 激情小说中文字幕| 国产精品羞羞答答xxdd| 一区二区三区四区在线视频| 久久精品 人人爱| 日韩中文字幕av| 亚洲天堂免费av| 国产精品乱人伦| 911福利视频| 99久久婷婷这里只有精品| 国产日韩在线播放| 黄色小网站在线观看| 在线不卡的av| 久久久久亚洲av无码专区体验| 国产麻豆成人传媒免费观看| 91视频成人免费| 91蝌蚪精品视频| 97碰碰碰免费色视频| 性xxxx视频播放免费| 色哟哟国产精品| 99久久99久久精品免费| 精一区二区三区| 国产欧美精品aaaaaa片| 免费观看成人www动漫视频| 青青草99啪国产免费| 美女欧美视频在线观看免费 | 日本乱人伦a精品| 狠狠狠综合7777久夜色撩人 | 97超碰人人看| 亚洲性图久久| 欧洲一区二区在线 | 国产精品毛片| 欧美亚洲一级二级| 亚洲三级在线| 韩国日本不卡在线| 国产高清在线看| 91精品免费在线观看| 国产污视频在线观看| 国产性色一区二区| 欧美高清精品一区二区| 国产欧美综合一区二区三区| 午夜免费电影一区在线观看| 秋霞影院一区| 日本成人激情视频| 暖暖日本在线观看| 日韩激情片免费| ,一级淫片a看免费| 性做久久久久久免费观看欧美| 色一情一交一乱一区二区三区| 韩国午夜理伦三级不卡影院| 男人添女荫道口图片| 日韩免费高清| 国产精品久久精品视| 久久久久伊人| 97色在线视频| 黄色网页在线免费看| 日韩成人av一区| 国产亲伦免费视频播放| 性做久久久久久免费观看| 国产黄色录像片| 99久久婷婷国产综合精品| 国产探花在线看| 乱码第一页成人| 亚洲色欲久久久综合网东京热| 欧洲福利电影| 国产一区二区在线观看免费播放| 免费视频成人| 国产97在线播放| 国产探花在线观看| 中文字幕欧美日韩精品| 三区在线观看| 亚洲第一综合天堂另类专| 中文字幕在线观看1| 欧美日韩国产中文精品字幕自在自线| 美国一级片在线观看| 久久青草国产手机看片福利盒子| 第一页在线视频| 黄色日韩网站视频| 麻豆三级在线观看| 亚欧成人精品| 欧美日韩性生活片| 狠狠色狠狠色综合日日tαg| 亚洲色图自拍| 不卡中文一二三区| 日本不卡在线播放| 国产成人精品免费视| 久久riav二区三区| 久久亚州av| 国产精品久久7| **爰片久久毛片| 亚洲一区二区中文字幕| 欧洲精品久久久久毛片完整版| 国产精品国产福利国产秒拍| 中文不卡1区2区3区| 97成人精品视频在线观看| 黄色小说在线播放| 久久久久久久久久久免费精品| 99在线视频观看| 久久不射热爱视频精品| 超碰在线caoporen| 久久综合久久美利坚合众国| 九七久久人人| 91蜜桃视频在线| 99re视频在线观看| 日韩一级特黄| 成人免费在线视频网址| 亚洲精品大片| 亚洲va欧美va国产综合剧情| 精品精品视频| 风间由美久久久| 精品素人av| 久久精品久久精品国产大片| 亚洲另类av| 日韩精品一区二区三区外面| 欧美肉体xxxx裸体137大胆| 亚洲欧美日韩国产成人综合一二三区 | av蓝导航精品导航| 超碰在线一区| 精品一卡二卡三卡四卡日本乱码| 牛牛精品成人免费视频| 蜜桃精品久久久久久久免费影院| 九九综合在线| 亚洲成人午夜在线| 欧美日韩一视频区二区| www.av毛片| 日韩精品色哟哟| 国产女同无遮挡互慰高潮91| 成人蜜臀av电影| 女人被狂躁c到高潮| 欧美高清在线精品一区| 麻豆精品国产免费| 亚洲成人av在线电影| 麻豆成人免费视频| 欧美绝品在线观看成人午夜影视| 亚洲AV无码一区二区三区少妇| 亚洲国产精品久久久久| 国产视频福利在线| 欧美另类在线播放| 亚洲最新无码中文字幕久久| 成人av在线亚洲| 黄色美女久久久| 五月天国产一区| 国产在线成人| 一级黄色特级片| 福利一区二区在线观看| 国内精品卡一卡二卡三| 亚洲精品免费一二三区| 三级视频在线观看| 欧美一区二区三区四区五区| 日本美女一级片| 日日骚久久av| 咪咪网在线视频| 亚洲一区中文字幕| 一本色道久久综合亚洲精品酒店 | 国产成人免费观看| 国产欧美日韩| 国产日韩欧美精品在线观看| 麻豆91在线播放| 国产制服丝袜在线| 亚洲日本护士毛茸茸| 免费黄色av片| 精品sm捆绑视频| av大片在线看| 91av网站在线播放| 日韩欧美久久| 亚洲看片网站| 久久精品导航| 800av在线播放| 一区二区三区中文字幕精品精品| 成人a v视频| 亚洲国产欧美日韩精品| 成码无人av片在线观看网站| 国产精品免费电影| 日韩精品欧美大片| 日韩成人手机在线| 黄网站免费久久| 日本欧美一区二区三区不卡视频| 婷婷开心激情综合| 亚洲AV无码精品自拍| 久久精品久久久久电影| 日本肉肉一区| 欧美性天天影院| 亚洲一区免费| 亚洲av成人片色在线观看高潮| 一区二区三区免费在线观看| 中文字幕在线观看视频一区| 亚洲少妇激情视频| 日产福利视频在线观看| 国产精品一区二区欧美| 午夜日韩在线| 国产调教打屁股xxxx网站| 亚洲欧美一区二区久久| 91片黄在线观看喷潮| 色婷婷综合久久久久| 国产成人a视频高清在线观看| 欧美日韩一区二区三区在线观看免 | 成人免费看aa片| 亚洲成年人网站在线观看| 亚洲乱码国产乱码精品精软件| 九色91av视频| 香港久久久电影| 国产精品成人久久电影| 国产suv精品一区二区6| 国内偷拍精品视频| 欧美一区二区三区免费大片| h视频网站在线观看| 国产精品第一区| 成人3d动漫在线观看| 午夜欧美福利视频| 国产精品理论在线观看| 一二三区在线播放| 按摩亚洲人久久| 精品一区二区三区在线观看视频| 午夜在线视频免费观看| 国产美女娇喘av呻吟久久| 欧美色图一区二区| 欧美成人bangbros| 国产ktv在线视频| 免费成人av网站| 日产欧产美韩系列久久99| 国产又粗又猛又爽又黄的视频四季 | 91亚洲无吗| 欧美色图另类小说| 国产午夜亚洲精品理论片色戒| 正在播放木下凛凛xv99| 精品国产一区二区三区久久久狼| 美国十次综合久久| 国产av熟女一区二区三区 | 精品一区日韩成人| 久久久久国产一区二区| 任我爽在线视频| 亚洲精品一区二区三区四区高清| 最新中文字幕在线播放| 一级特黄录像免费播放全99| 国产精品99久久久久久似苏梦涵| 免费观看一级视频| 亚洲欧美制服丝袜| 欧美伊人亚洲伊人色综合动图| 欧美这里只有精品| 久久这里只有精品6| 99草在线视频| 91国产视频在线| 日韩在线观看一区| 日本精品一二三区| 欧美影院午夜播放| 激情影院在线| 日韩三级电影| 国产成人av电影免费在线观看| 中文字幕一区在线播放| 久久亚洲精品视频| 日韩高清一级| 99精品视频免费版的特色功能| 色综合中文字幕| 欧美午夜大胆人体|