java web學習筆記[email protected] @Request
@RequestMapping(value="/DeviceInfo")
在我們的controller程式碼中看到以上註解,在網上查了一些註解的資料,現總結如下:
spring中的註解可以分為兩大類:
1、spring的bean容器的相關注解;或者說bean工廠的相關注解
2、springmvc的相關注解
spring的bean容器相關的註解,先後有:@Required, @Autowired, @PostConstruct, @PreDestory,還有Spring3.0開始支援的JSR-330標準javax.inject.*中的註解(@Inject, @Named, @Qualifier, @Provider, @Scope, @Singleton).
springmvc相關的註解有:@Controller, @RequestMapping, @RequestParam, @ResponseBody等等。
@controller用於標註控制層元件(如struts中的action);表明某類是一個controller。
Controller控制器是通過服務介面定義的提供訪問應用程式的一種行為,它解釋使用者的輸入,將其轉換成一個模型然後將試圖呈獻給使用者。Spring
MVC 使用 @Controller 定義控制器,它還允許自動檢測定義在類路徑下的元件並自動註冊。
@RequestMapping請求路徑對映,如果標註在某個controller的類級別上,則表明訪問此類路徑下的的方法都要加上其配置的路徑,最常用的是標註在方法上,表明那個具體方法來接受處理某次請求。
我們可以 @RequestMapping 註解將類似 “/favsoft”這樣的URL對映到整個類或特定的處理方法上。一般來說,類級別的註解對映特定的請求路徑到表單控制器上,而方法級別的註解只是對映為一個特定的HTTP方法請求(“GET”,“POST”等)或HTTP請求引數。
@Controller
@RequestMapping
(
"/favsoft"
)
public
class
AnnotationController {
@RequestMapping
(method=RequestMethod.GET)
public
String get(){
return
""
;
}
@RequestMapping
(value=
"/getName"
, method = RequestMethod.GET)
public
String getName(String userName) {
return
userName;
}
@RequestMapping
(value=
"/{day}"
, method=RequestMethod.GET)
public
String getDay(Date day){
DateFormat df =
new
SimpleDateFormat(
"yyyy-MM-dd"
);
return
df.format(day);
}
@RequestMapping
(value=
"/addUser"
, method=RequestMethod.GET)
public
String addFavUser(
@Validated
FavUser favUser,BindingResult result){
if
(result.hasErrors()){
return
"favUser"
;
}
//favUserService.addFavUser(favUser);
return
"redirect:/favlist"
;
}
@RequestMapping
(
"/test"
)
@ResponseBody
public
String test(){
return
"aa"
;
}
}