欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

SpringMVC數(shù)據(jù)輸出相關(guān)知識(shí)總結(jié)

 更新時(shí)間:2021年06月06日 11:24:49   作者:油炸冰可樂  
今天帶大家學(xué)習(xí)SpringMVC的相關(guān)知識(shí),文中對(duì)SpringMVC數(shù)據(jù)輸出作了非常詳細(xì)的代碼示例,對(duì)正在學(xué)習(xí)的小伙伴們很有幫助,需要的朋友可以參考下

一、數(shù)據(jù)輸出

SpringMVC將數(shù)據(jù)攜帶給頁面的儲(chǔ)存工具,有三種,map,ModelMap,model,它們?cè)诘讓訉?shí)質(zhì)還是使用到了BindingAwareModelMap,對(duì)數(shù)據(jù)進(jìn)行存儲(chǔ):

在這里插入圖片描述

此外,也可以使用ModelAndView攜帶數(shù)據(jù)回傳頁面,實(shí)現(xiàn)代碼如下

/**
 * 向頁面回傳數(shù)據(jù)顯示 handle01/02/03
 * 使用 model map modelMap 回傳數(shù)據(jù) 放置在request中
 */
@RequestMapping("/handle01")
public String handler01(Map<String, String> map) {
    map.put("msg","你好1!");
    return "success";
}

@RequestMapping("/handle02")
public String handler02(Model model) {
    model.addAttribute("msg","你好2");
    return "success";
}

@RequestMapping("/handle03")
public String handler03(ModelMap modelMap) {
    modelMap.addAttribute("msg","你好3");
    return "success";
}

/**
 * modelAndView 攜帶數(shù)據(jù)
 */

@RequestMapping("/handle04")
public ModelAndView handler(){
    ModelAndView mv = new ModelAndView("success");
    mv.addObject("msg","你好04");
    return mv;
}

二、@ModelAttribute注解

使用@ModelAttribute注解,可以得到請(qǐng)求參數(shù)中的某個(gè)對(duì)象,而不是自己new出來的對(duì)象,所有帶有ModelAttribute注解的方法都會(huì)提前于目標(biāo)方法運(yùn)行,將對(duì)象放置在request域中,然后在目標(biāo)方法中獲取,代碼示例:

// 先于目標(biāo)方法執(zhí)行,獲取了數(shù)據(jù)庫中的斗個(gè)對(duì)象的信息
@ModelAttribute
public void hahaMyModelAttribute(Map<String, Object> map){
        
Book book = new Book(100, "西游記", "吳承恩", 98, 10, 98.98);
    System.out.println("數(shù)據(jù)庫中查到的圖書信息是:"+book);
    map.put("haha", book);
    b1 = book;
    o1 = map;
    System.out.println("modelAttribute方法...查詢了圖書并給你保存起來了...他用的map的類				型:"+map.getClass());
    }
}

// 目標(biāo)方法,在目標(biāo)方法中使用查詢到的對(duì)象
@RequestMapping("/updateBook")
public String updateBook(@ModelAttribute("haha")Book book,Map<String, Object> model){
    o2 = model;
    b2  = book;
    Object haha = model.get("haha");
    //System.out.println("傳入的model:"+model.getClass());
    System.out.println("o1==o2?"+(o1 == o2));
    System.out.println("b1==b2?"+(b1 == b2)+"-->"+(b2 == haha));
     System.out.println("頁面要提交過來的圖書信息:"+book);
    return "success";
    }

這樣做的好處在于,避免了全字段修改,不給值的地方Spring會(huì)默認(rèn)使用null進(jìn)行代替,這回在修改之前每個(gè)鍵值對(duì)都有值。

到此這篇關(guān)于SpringMVC數(shù)據(jù)輸出相關(guān)知識(shí)總結(jié)的文章就介紹到這了,更多相關(guān)SpringMVC數(shù)據(jù)輸出內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • HashMap在JDK7與JDK8中的實(shí)現(xiàn)過程解析

    HashMap在JDK7與JDK8中的實(shí)現(xiàn)過程解析

    這幾天學(xué)習(xí)了HashMap的底層實(shí)現(xiàn),但是發(fā)現(xiàn)好幾個(gè)版本的,代碼不一,很多文章都是舊版本JDK1.6.JDK1.7的?,F(xiàn)在我來分析下JDK7與JDK8中HashMap的實(shí)現(xiàn)過程
    2021-09-09
  • SpringBoot+MybatisPlus+Mysql+Sharding-JDBC分庫分表

    SpringBoot+MybatisPlus+Mysql+Sharding-JDBC分庫分表

    本文主要介紹了SpringBoot+MybatisPlus+Mysql+Sharding-JDBC分庫分表,文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-03-03
  • JMS簡(jiǎn)介與ActiveMQ實(shí)戰(zhàn)代碼分享

    JMS簡(jiǎn)介與ActiveMQ實(shí)戰(zhàn)代碼分享

    這篇文章主要介紹了JMS簡(jiǎn)介與ActiveMQ實(shí)戰(zhàn)代碼分享,具有一定借鑒價(jià)值,需要的朋友可以參考下
    2017-12-12
  • 深入剖析java中String、StringBuffer、StringBuilder的區(qū)別

    深入剖析java中String、StringBuffer、StringBuilder的區(qū)別

    下面小編就為大家?guī)硪黄钊肫饰鰆ava中String、StringBuffer、StringBuilder的區(qū)別。小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧
    2016-05-05
  • Spring底層事務(wù)原理解析

    Spring底層事務(wù)原理解析

    Spring事務(wù)有可能會(huì)提交,回滾、掛起、恢復(fù),所以Spring事務(wù)提供了一種機(jī)制,可以讓程序員來監(jiān)聽當(dāng)前Spring事務(wù)所處于的狀態(tài),這篇文章主要介紹了Spring底層事務(wù)原理,需要的朋友可以參考下
    2022-12-12
  • tcc分布式事務(wù)框架體系解析

    tcc分布式事務(wù)框架體系解析

    這篇文章主要為大家介紹了tcc分布式事務(wù)框架體系結(jié)構(gòu)的解析說明,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步
    2022-03-03
  • Java如何使用while循環(huán)計(jì)算一個(gè)整數(shù)的位數(shù)

    Java如何使用while循環(huán)計(jì)算一個(gè)整數(shù)的位數(shù)

    這篇文章主要介紹了Java使用while循環(huán)計(jì)算一個(gè)整數(shù)的位數(shù)方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-01-01
  • Spring MVC攔截器和跨域請(qǐng)求使用詳解

    Spring MVC攔截器和跨域請(qǐng)求使用詳解

    SpringMVC的攔截器也是AOP思想的一種實(shí)現(xiàn)方式,主要用于攔截用戶的請(qǐng)求并做相應(yīng)的處理,通常應(yīng)用在權(quán)限驗(yàn)證、記錄請(qǐng)求信息的日志、判斷用戶是否登錄等功能上,這篇文章主要介紹了Spring MVC攔截器和跨域請(qǐng)求,需要的朋友可以參考下
    2023-07-07
  • SpringMVC打印請(qǐng)求參數(shù)和響應(yīng)數(shù)據(jù)最優(yōu)方案

    SpringMVC打印請(qǐng)求參數(shù)和響應(yīng)數(shù)據(jù)最優(yōu)方案

    項(xiàng)目中經(jīng)常需要打印http請(qǐng)求的參數(shù)和響應(yīng)數(shù)據(jù),本文給大家講解如何在SpringMVC打印請(qǐng)求參數(shù)和響應(yīng)數(shù)據(jù)最優(yōu)方案,感興趣的朋友跟隨小編一起看看吧
    2023-07-07
  • java單例五種實(shí)現(xiàn)模式解析

    java單例五種實(shí)現(xiàn)模式解析

    這篇文章主要介紹了java單例五種實(shí)現(xiàn)模式解析,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2019-09-09

最新評(píng)論