亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 學院 > 開發設計 > 正文

SpringMVC常用的注解

2019-11-14 15:19:09
字體:
來源:轉載
供稿:網友

 
@Controller
@Controller 負責注冊一個bean 到sPRing 上下文中,bean 的ID 默認為

類名稱開頭字母小寫,你也可以自己指定,如下
方法一:
@Controller
public class TestController {}
 
方法二:           
@Controller("tmpController")
public class TestController {}
 
@RequestMapping
 
1.@RequestMapping用來定義訪問的URL,你可以為整個類定義一個

@RequestMapping,或者為每個方法指定一個。
把@RequestMapping放在類級別上,這可令它與方法級別上的

@RequestMapping注解協同工作,取得縮小選擇范圍的效果。
例如:
@RequestMapping("/test")
public class TestController {}
則,該類下的所有訪問路徑都在/test之下。
 
2.將@RequestMapping用于整個類不是必須的,如果沒有配置,所有的方法

的訪問路徑配置將是完全獨立的,沒有任何關聯。
 
3.完整的參數項為:@RequestMapping(value="",method =

{"",""},headers={},params={"",""}),各參數說明如下:
value :String[] 設置訪問地址
method: RequestMethod[]設置訪問方式,字符數組,查看RequestMethod

類,包括GET, HEAD, POST, PUT, DELETE, OPTIONS, TRACE,常用

RequestMethod.GET,RequestMethod.POST
headers:String[] headers一般結合method = RequestMethod.POST使用
params: String[] 訪問參數設置,字符數組 例如:userId=id
 
4.value的配置還可以采用模版變量的形式 ,例如:@RequestMapping

(value="/owners/{ownerId}", method=RequestMethod.GET),這點將在介

紹@PathVariable中詳細說明。
 
5.@RequestMapping params的補充說明,你可以通過設置參數條件來限制

訪問地址,例如params="myParam=myValue"表達式,訪問地址中參數只有

包含了該規定的值"myParam=myValue"才能匹配得上,類似"myParam"之類

的表達式也是支持的,表示當前請求的地址必須有該參數(參數的值可以是

任意),"!myParam"之類的表達式表明當前請求的地址不能包含具體指定的

參數"myParam"。
 
6.有一點需要注意的,如果為類定義了訪問地址為*.do,*.html之類的,則

在方法級的@RequestMapping,不能再定義value值,否則會報錯,例如
java代碼 
@RequestMapping("/bbs.do") 
public class BbsController { 
    @RequestMapping(params = "method=getList") 
    public String getList() { 
     return "list"; 
    } 
@RequestMapping(value= "/spList") 
public String getSpecialList() { 
     return "splist"; 
    } 

 
如上例:/bbs.do?method=getList 可以訪問到方法getList() ;而訪

問/bbs.do/spList則會報錯.
 
@PathVariable
1.@PathVariable用于方法中的參數,表示方法參數綁定到地址URL的模板

變量。
例如:
Java代碼 
@RequestMapping(value="/owners/{ownerId}",

method=RequestMethod.GET) 
public String findOwner(@PathVariable String ownerId, Model

model) { 
  Owner owner = ownerService.findOwner(ownerId);   
  model.addAttribute("owner", owner);   
  return "displayOwner"; 

 
2.@PathVariable用于地址欄使用{xxx}模版變量時使用。
如果@RequestMapping沒有定義類似"/{ownerId}" ,這種變量,則使用在

方法中@PathVariable會報錯。
 
 
@ModelAttribute
1.應用于方法參數,參數可以在頁面直接獲取,相當于

request.setAttribute(,)
2.應用于方法,將任何一個擁有返回值的方法標注上 @ModelAttribute,使

其返回值將會進入到模型對象的屬性列表中.
3.應用于方法參數時@ModelAttribute("xx"),須關聯到Object的數據類型

,基本數據類型 如:int,String不起作用
例如:
Java代碼 
@ModelAttribute("items")//<——①向模型對象中添加一個名為items的

屬性 
public List<String> populateItems() { 
        List<String> lists = new ArrayList<String>(); 
        lists.add("item1"); 
        lists.add("item2"); 
        return lists; 

@RequestMapping(params = "method=listAllBoard") 
public String listAllBoard(@ModelAttribute("currUser")User user,

ModelMap model) { 
        bbtForumService.getAllBoard(); 
        //<——②在此訪問模型中的items屬性 
        System.out.println("model.items:" + ((List<String>)

model.get("items")).size()); 
        return "listBoard"; 

 
在 ① 處,通過使用 @ModelAttribute 注解,populateItem() 方法將在

任何請求處理方法執行前調用,Spring MVC 會將該方法返回值以“items

”為名放入到隱含的模型對象屬性列表中。
所以在 ② 處,我們就可以通過 ModelMap 入參訪問到 items 屬性,當執

行 listAllBoard() 請求處理方法時,② 處將在控制臺打印

出“model.items:2”的信息。當然我們也可以在請求的視圖中訪問到模型

對象中的 items 屬性。
 
 
@ResponseBody
這個注解可以直接放在方法上,表示返回類型將會直接作為HTTP響應字節

流輸出(不被放置在Model,也不被攔截為視圖頁面名稱)??梢杂糜?a href="http://www.49028c.com/article.asp?typeid=119">Ajax。
 
@RequestParam
@RequestParam是一個可選參數,例如:@RequestParam("id") 注解,所以

它將和URL所帶參數 id進行綁定
如果入參是基本數據類型(如 int、long、float 等),URL 請求參數中

一定要有對應的參數,否則將拋出

org.springframework.web.util.NestedServletException 異常,提示無

法將 null 轉換為基本數據類型.
 
@RequestParam包含3個配置 @RequestParam(required = ,value="",

defaultValue = "")
required :參數是否必須,boolean類型,可選項,默認為true
value: 傳遞的參數名稱,String類型,可選項,如果有值,對應到設置方

法的參數
defaultValue:String類型,參數沒有傳遞時為參數默認指定的值
 
@sessionAttributes session管理
Spring 允許我們有選擇地指定 ModelMap 中的哪些屬性需要轉存到

session 中,以便下一個請求屬對應的 ModelMap 的屬性列表中還能訪問

到這些屬性。這一功能是通過類定義處標注 @SessionAttributes 注解來

實現的。@SessionAttributes 只能聲明在類上,而不能聲明在方法上。
 
例如
 
@SessionAttributes("currUser") // 將ModelMap 中屬性名為currUser 的屬性


@SessionAttributes({"attr1","attr2"})
@SessionAttributes(types = User.class)
@SessionAttributes(types = {User.class,Dept.class})
@SessionAttributes(types = {User.class,Dept.class},value={"attr1","attr2"})

 
@CookieValue 獲取cookie信息
@RequestHeader 獲取請求的頭部信息


上一篇:Log4j使用教程

下一篇:log4j配置

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
91社区国产高清| 亚洲精品之草原avav久久| 国产精品一区久久久| 国产日韩欧美一二三区| 91影视免费在线观看| 国产午夜精品全部视频在线播放| 538国产精品视频一区二区| 精品国产视频在线| 亚洲精品美女视频| 亚洲午夜激情免费视频| 亚洲欧美激情视频| 一本一本久久a久久精品牛牛影视| 日韩在线观看免费全| 欧美国产在线视频| 国产日韩中文字幕| 亚洲人成毛片在线播放| 亚洲人成电影网| 8x拔播拔播x8国产精品| 国产亚洲免费的视频看| 亚洲在线免费看| 久久综合网hezyo| 亚洲一区999| 综合网日日天干夜夜久久| 在线电影欧美日韩一区二区私密| 中国china体内裑精亚洲片| 国产精品久久久久久久久久久久久| 一本色道久久88综合亚洲精品ⅰ| 日本三级韩国三级久久| 亚洲男人7777| 日韩精品福利在线| 亚洲国产精品专区久久| 欧美怡春院一区二区三区| 日韩国产欧美精品一区二区三区| 久久久久久中文字幕| 91网在线免费观看| 久久精品2019中文字幕| 亚洲一二三在线| 成人免费看吃奶视频网站| 国产在线精品成人一区二区三区| 91精品国产色综合| 2019亚洲日韩新视频| 国产精品网站视频| 日韩视频在线观看免费| 欧美中文在线免费| 亚洲男女性事视频| 国产精品日韩一区| 欧美日韩在线观看视频| 粉嫩老牛aⅴ一区二区三区| 久久久久久网站| 中文字幕一区二区三区电影| 亚洲欧洲一区二区三区久久| 国产综合福利在线| 午夜精品蜜臀一区二区三区免费| 久久国内精品一国内精品| 国产精品女主播视频| 久久九九亚洲综合| 日韩在线免费视频观看| 97婷婷大伊香蕉精品视频| 日韩美女写真福利在线观看| 夜夜嗨av一区二区三区免费区| 久久久欧美一区二区| 亚洲一区www| 欧美极品美女视频网站在线观看免费| 欧美成人激情图片网| 国产精品午夜一区二区欲梦| 97在线视频免费| 亚洲国产欧美在线成人app| 久久久久久久久久亚洲| 欧美日韩国产精品一区| 亚洲欧洲在线视频| 色一区av在线| 亚洲成色999久久网站| 欧美日韩在线一区| 在线观看日韩视频| 色一情一乱一区二区| 国产精品白嫩美女在线观看| 青青草一区二区| 亚洲精品v欧美精品v日韩精品| 91精品国产自产91精品| 国产精品久久久久久五月尺| 亚洲美女性视频| 亚洲精品美女网站| 国产精品网站入口| 国产99久久精品一区二区永久免费| 欧美综合一区第一页| 欧美成人午夜激情视频| 亚洲男人天堂网站| 亚洲视频欧洲视频| 日韩av三级在线观看| 亚洲成人久久网| 国产精品视频区1| 亚洲欧洲在线视频| 精品一区二区电影| 欧美另类精品xxxx孕妇| 九九九久久久久久| 国产高清视频一区三区| 久热精品在线视频| 97色在线视频观看| 91麻豆国产精品| 日韩经典中文字幕在线观看| 国产91免费观看| 久久av中文字幕| 色综合五月天导航| 91情侣偷在线精品国产| 亚洲美女性视频| 国产日韩精品一区二区| 日韩视频中文字幕| 国产在线观看精品一区二区三区| 精品久久中文字幕久久av| 久久久亚洲欧洲日产国码aⅴ| 亚洲欧洲在线播放| 久久精品一区中文字幕| 亚洲色图狂野欧美| 91a在线视频| 亚洲国产美女精品久久久久∴| 欧美日韩另类字幕中文| 亚洲tv在线观看| 欧美黑人极品猛少妇色xxxxx| 九九热精品视频| 日韩av一区二区在线| 成人性生交大片免费看小说| 欧美日韩精品中文字幕| 国产精品一区二区久久久| 国产精品成人一区二区三区吃奶| 久久亚洲春色中文字幕| 久久不射热爱视频精品| 日韩中文字幕精品| 国产中文字幕日韩| 日本在线观看天堂男亚洲| 国产欧美日韩免费看aⅴ视频| 亚洲精品www久久久久久广东| 国产亚洲欧美aaaa| 成人av在线天堂| 清纯唯美亚洲综合| 4388成人网| 日本欧美爱爱爱| 亚洲福利在线视频| 91香蕉亚洲精品| 91手机视频在线观看| 成人妇女淫片aaaa视频| 欧美激情视频一区二区三区不卡| 欧美日韩国产第一页| 伊人亚洲福利一区二区三区| 九九热r在线视频精品| 精品久久久久久中文字幕大豆网| 国产一区二区三区毛片| 精品成人国产在线观看男人呻吟| 国产不卡精品视男人的天堂| 成人精品视频在线| 国产成人精品久久亚洲高清不卡| 日韩av中文字幕在线播放| 亚洲国产精品网站| 欧美激情视频网站| 亚洲国产97在线精品一区| 国产v综合ⅴ日韩v欧美大片| 国产欧美一区二区三区久久人妖| 成人在线播放av| 亚洲第一免费播放区| 亚洲精品成人久久久| 在线视频日韩精品| 91在线视频免费| 精品国产999| 欧美激情a∨在线视频播放| 青青青国产精品一区二区|