1.@Controller
是標記在類名上面的一個註解,負責處理DispatcherServlet分發的請求,經過具體的處理器,處理返回一個model,然後把這個model返回給相對應的view進行視圖顯示。
@Target:用於描述註解的使用範圍。
@Retention:註解的生命週期三種狀態(SOURCE:註解在編譯的時候被忽略。 CLASS:默認是該策略,註解被編譯器編譯進class文件;但是不被VM運行時保留 。RUNTIME:一直保留到運行時 可以通過反射獲取註解信息)
@Documented:註解表明這個註解應該被 javadoc工具記錄
@Inherited:是否允許子類繼承該註解
2.@RestController
該註解爲組組合註解ResponseBody+Controller。註解放置在類名上,你就不再需要將@ResponseBody添加到所有請求映射方法中。@ResponseBody註釋默認處於活動狀態。
3.@ResponseBody
把java對象轉換爲json格式的數據。
4.@RequestMapping
這個註解會將HTTP請求映射到mvc和rest控制器的處理方法上。如果該註解作用在類上,每個請求前的路徑都需要加上前綴如 /demo/index.htm
如果該註解沒用在類上使用,只在方法上使用,則方法請求路徑就爲/index.htm
5.@Autowired
該註解用於自動裝配bean。它可以對類成員變量、方法及構造函數進行標註,完成自動裝配的工作。在方法內就可以直接調用該方法的屬性,方法。
@Autowired
UserService userService;