Springboot MVC 常用註解詳解

2021-09-28 10:32:07 字數 3231 閱讀 4824

org.springframework.boot

spring-boot-starter-web

模板檔案:位於 resources/templates目錄下

靜態檔案(css、js、image)位於resources/static目錄下

配置檔案:位於 resources目錄下

源**檔案:src目錄下

controller—控制器

service— 業務處理類

entity—實體類

conf–配置類

dao–資料庫處理類

核心註解,放在main方法所在啟動類之上,表示springboot 入口

@controller

作用於類之上,表明當前是乙個mvc中的controller。

@restcontroller

作用於類之上,表明當前類是乙個controller而且類中的方法不能返回html、jsp等頁面,只能返回 文字 json、xml

@responsebody

作用於 controller中的方法之上,表明當前方法返回的是文字,基於字串、xml、json等。

@restcontroller等於 @controller+@responsebody

作用於類或者方法之上。用於對映url

比如示例:

import org.springframework.web.bind.annotation.pathvariable;

import org.springframework.web.bind.annotation.requestmethod;

import org.springframework.web.bind.annotation.restcontroller;

@restcontroller

public class hellocontroller

}

這些註解對應不同的請求方法

@pathvariable

這是乙個作用域引數的註解,用於表示將url中的引數對映到後面的引數中

預設引數 value:表示對映哪乙個url中的引數

@requestbody

這也是乙個作用於引數的註解,表示 客戶端請求內容 需要是引數型別對應的json格式,服務端 spring boot 預設使用 jackson 來處理客戶端請求的json,並反序列化為 引數型別。比如:

@responsebody

public string test2(@requestbody user user)

上面**表示客戶端發起了乙個json請求,spring boot返回的是乙個字串,二對於json請求,spring boot 將請求內容序列化為user 物件。

@modelattribute@bean

作用和spring配置檔案中的相同,但是放在方法的上面,而不是類,意思是將方法返回的物件作為乙個bean,交給spring管理。

經常放在@configuration註解的類中的方法之上使用。

@qualifier

這個註解在當spring上下文中有多個同一型別的bean時,會丟擲beancreationexception異常,所以用@qualifier(「name」)來指定,但是需要與@autowired配合使用,例如:

@autowired   

@qualifier("userserviceimpl")

public iuserservice userservice;

@autowired

作用於類,屬性、setter方法之上,用來裝備物件,賦值的。

@resource

和autowired類似,也是用來裝配物件,區別是:

1.@autowired 是spring註解,而 @resource是j2ee的。推薦使用 @resource

2.@autowired是根據型別進行自動裝配的。所以乙個型別有多個bean時,會報異常,那麼這時候用上面說的@qualifier來解決。

@resource根據名稱來進行裝配

@configuration

放在類的上面表示這是乙個由spring管理的配置類,類中會有多個@bean註解的方法,注意的是,@bean註解的方法返回的物件都是由spring動態**,是同乙個例項

@component

與@configuration類似,也是註解配置類的,但是區別是@component中的物件都是每次呼叫都會new乙個新物件。

@component 註解的類表示是spring的乙個元件,可以被注入到spring容器中進行管理。

@repository

也是註解類被注入到spring容器中管理的,但是區別是,

@repository 會被作為持久層操作(資料庫)的bean來使用 ,也就是說這個註解只能放在持久層操作類之上。

@service

和 @component屬於同一類別的註解, 作用於業務邏輯層

其實 @controller也是屬於同一型別的註解,只是controller只作用於控制器之上,會被spring-mvc框架所使用。

@componentscan

放在啟動類之上,表示元件掃瞄,如果需要掃瞄@component @controller @service這些註解的類,則需要在啟動類上用到這個註解

同樣,如果掃瞄到了有@component @controller @service這些註解的類,則直接把這些類註冊為bean

@enableautoconfiguration

讓 spring boot 根據應用所宣告的依賴來對 spring 框架進行自動配置,一般加在啟動類上。

@controlleradvice

這個註解用於處理 統一異常處理 等切面時用到

@initbinder

註冊類中使用,比如註冊乙個日期轉換類的時候用到

easyui常用控制項常用方法

easyui常用控制項使用方法 1.文字框 取值 id textbox getvalue 或 id val 2.鏈結按鈕 register 3.日曆控制項 顯示年月日 取值 kssj datebox getvalue 顯示年月日時分秒 取值 regtime datetimebox getvalue ...

常用指令碼 常用指令碼整理

1 addloadevent 網頁載入完成後把多個自己編寫的函式繫結到window.onload事件中 把現有的window.onload事件處理函式的值存入便令oldonload。如果在這個處理函式上還沒有繫結任何函式,就像平時那樣把新函式新增給它。如果在這個處理函式上已經繫結了一些函式,就把新函...

Redis set集合常用常用指令

sadd scard srem smember 檢視指定集合的所有元素 srandmember 隨機抽取指定元素的乙個值 srandmember 隨機抽取指定元素的多個值 spop smove 127.0.0.1 6379 sadd set1 2 3 4 5 6 1 設定集合元素 integer 6...