Spring常用註解類

2020-12-23 Javaer驛站

Java5.0過後開始支持註解,Spring作為java中的領軍框架,在Spring2.5過後也開始放棄xml配置文件了,更多的推薦註解來使用Spring框架。

Spring中那麼多的註解,其中很多可能在工作中很少能遇見,也就用不上。下面就給大家總結一些常用的註解。

@Required

該註解用於bean的setter方法上。表示這個屬性是必須的,在配置階段必須注入,否則會拋出異常。

@Autowired

該註解用於bean的屬性,set方法以及和構造器上,通過type來聲明bean依賴,從而自動注入。

屬性field 使用該註解,會自動賦值給該屬性。但是按照阿里編碼規範,不推薦這樣使用(不推薦)。

@RestController

public class AppUserController extends Controller {

private CampaignService campaignService;

}

set方法上使用該註解,可以在setter方法中添加自定義代碼。

@Component

private People people;

public void setPeople(People people){

this.people = people

構造器上使用該註解。一個類中只允許有一個構造器上使用該註解。在Spring4過後,如果一個類只有一個構造方法,即使不使用該註解,Spring也會自動注入相關的bean。

public AppUserController (People people){

this.people = people;

@Qualifier

該註解通常和@Autowired結合使用。當Spring容器中有多個相同類型的bean存在時,需要用該註解來指定對應name來區分到底使用哪個bean。

@Qualifier("people1")

@Configuration

該註解用類上來定義bean。表示這個類是一個配置類,作用和xml配置文件相同。常常結合@Bean使用來初始化定義bean。

public class RedisConfig extends CachingConfigurerSupport {

@Bean

public JedisPool redisPoolFactory() {

JedisPoolConfig jedisPoolConfig = new JedisPoolConfig();

jedisPoolConfig.setMaxIdle(maxIdle);

jedisPoolConfig.setMaxWaitMillis(maxWaitMillis);

if (StringUtils.isNotBlank(password)) {

return new JedisPool(jedisPoolConfig, host, port, timeout, password);

} else {

return new JedisPool(jedisPoolConfig, host, port, timeout);

@ComponentScan

該註解常和@Configuration結合使用,Spring掃描註解的包,如果沒有指定,那麼默認掃描註解所在的包。通常在使用mybatis時使用,來掃描其xml配置文件。

@Lazy

一般情況下,Spring容器在啟動時會創建所有的Bean對象,使用@Lazy註解可以將Bean對象的創建延遲到第一次使用Bean的時候。如果想要延遲初始化一個bean,那麼就可以使用該註解,表示只有在第一次使用的時候才會創建和初始化。當該註解同@Configuration一起使用時,表示該類中的所有被@bean註解的方法都會延遲初始化。

@Value

該註解用來讀取配置文件變量,環境變量和系統屬性的值,並將其賦值給使用該註解的屬性。常常用於讀取配置文件中的值。

@Value("${spring.redis.host}")

private String host;

@Value("${spring.redis.port}")

private int port;

相關焦點

  • Spring常用註解——JAVA成長之路
    如果不指定value屬性,默認bean的id是當前類的類名。首字母小寫。1.2 作用:作用上與@Component。一般用於表現層的註解。如果不指定value屬性,默認bean的id是當前類的類名。首字母小寫。1.3 作用:作用上與@Component。一般用於業務層的註解。
  • SpringMVC的常用註解
    現在企業比較流行開發框架是SSM框架,當然有的公司可能還用SSH框架,今天我主要講的是SSM框架其中的springMVC的常用註解,以及對每個註解的理解。,要好好的理解,在實際開發中,很常用的註解之一。
  • SpringBoot開發常用的註解及作用
    springboot它是spring開源組織下的子項目,主要是用來簡化spring的難度以及不足,節省程式設計師的繁重的配置,為程式設計師開發過程中各種啟動器。springboot的常用註解:1,@SpringBootApplication:該註解是springboot最核心註解,也是組合註解,聲明它就可以讓springboot自動給程序進行必要的配置(簡單的說,開啟組件掃描和自己配置的功能)。
  • spring框架之註解的使用
    1開啟註解①開啟spring的註解context:annotation-config讓註解有效了,能夠識別註解。②配置註解掃描context:component-scan用來專門掃描含有@Component註解的類,自動將其作為bean。
  • 結合參數接收響應轉換原理講解SpringBoot常用註解
    結合參數接收響應轉換原理講解SpringBoot常用註解一、常用註解回顧1.1 @RequestBody與@ResponseBody@RequestBody與@ResponseBody(圖片點擊可放大)如上代碼所示:@RequestBody修飾請求參數,註解用於接收HTTP的body,默認是使用JSON的格式
  • spring的java配置方式
    很多小夥伴肯定和我一樣在剛開始學習spring的時候,關於配置方式接觸的是xml的配置方式,那個時候都說xml的方式很好,可以實現完全解藕,我需要什麼實現我就改配置文件就行了,不需要改代碼,不需要重新編譯。可是,當我工作之後我發現其實應用級程序很少遇到要到要換接口實現。
  • 5步學完spring boot單元測試,與postman有什麼優點?
    最後在test源文件下面創建測試的父類,這個類作為父類,可以在類的註解上加一些通用的註解,比如@RunWith、@SpringBootTest。這樣作為其他測試類只用繼承這個類就行了。而且可以在父類裡面做一些統一的配置之類的。
  • 基礎篇:Spring Boot入門體驗(圖文教程)
    (3)集成了大量常用的第三方庫的配置, Spring Boot 應用為這些第三方庫提供了幾乎可以零配置的開箱即用的能力。(4)提供一系列大型項目常用的非功能性特徵,如嵌入式伺服器、安全性、度量、運行狀況檢查、外部化配置等。(5)Spring Boot 不是Spring 的替代者,Spring 框架是通過 IOC 機制來管理 Bean 的。
  • Spring Boot 快速入門教程(附詳細圖文)
    (3)集成了大量常用的第三方庫的配置, Spring Boot 應用為這些第三方庫提供了幾乎可以零配置的開箱即用的能力。(4)提供一系列大型項目常用的非功能性特徵,如嵌入式伺服器、安全性、度量、運行狀況檢查、外部化配置等。(5)Spring Boot 不是Spring 的替代者,Spring 框架是通過 IOC 機制來管理 Bean 的。
  • 學習學習SpringSecurity
    配置類內容如下package com.example.demo.config;import org.springframework.context.annotation.Bean使用@EnableGlobalMethodSecurity(prePostEnabled = true)這個註解,可以開啟security的註解,我們可以在需要控制權限的方法上面使用@PreAuthorize,@PreFilter這些註解。
  • 小學妹問:Mybatis常見註解有哪些?
    該註解主要是掃描某個包目錄下的Mapper,將Mapper接口類交給Spring進行管理。該註解是由Mybatis框架中定義的一個描述數據層接口的註解,註解往往起到的都是一個描述性作用,用於告訴Spring框架此接口的實現類由Mybatis負責創建,並將其實現類對象存儲到spring容器中。
  • Spring 核心 :FactoryBean
    如何使用繼承了BeanFactoryPostProcessor接口的類PostProcessors:package chkui.springcore.example.xml.beanfactorypostprocessor;public class PostProcessors implements BeanFactoryPostProcessor
  • 繼「劉強東」之後京東的第二位程式設計師「呂科」spring面試題講解
    面試問題答案及spring常見面試問題答案1、什麼是Spring框架?由包和類的編號就可以看出其所屬的模塊,開發者僅僅需要選用他們需要的模塊即可。要測試一項用Spring開發的應用程式十分簡單,因為測試相關的環境代碼都已經囊括在框架中了。更加簡單的是,利用JavaBean形式的POJO類,可以很方便的利用依賴注入來寫入測試數據。
  • Spring框架IoC核心詳解
    這是spring的核心,貫穿始終。所謂IoC,對於spring框架來說,就是由spring來負責控制對象的生命周期和對象間的關係。這是什麼意思呢,舉個簡單的例子,我們是如何找女朋友的?Spring所倡導的開發方式就是如此,所有的類都會在spring容器中登記,告訴spring你是個什麼東西,你需要什麼東西,然後spring會在系統運行到適當的時候,把你要的東西主動給你,同時也把你交給其他需要你的東西。所有的類的創建、銷毀都由spring來控制,也就是說控制對象生存周期的不再是引用它的對象,而是spring。
  • Spring Boot實現定時任務新解,你是否能get到?
    在啟動類上加@EnableScheduling註解,如下,package com.example.demo;import com.example.demo.properties.ApplicationPro;import org.springframework.boot.SpringApplication;import org.springframework.boot.autoconfigure.SpringBootApplication
  • 一口氣說出6種,@Transactional註解的失效場景
    @Transactional 註解相信大家並不陌生,平時開發中很常用的一個註解,它能保證方法內多個資料庫操作要麼同時成功、要麼同時失敗。使用@Transactional註解時需要注意許多的細節,不然你會發現@Transactional總是莫名其妙的就失效了。
  • Spring Boot面試題(2020最新版)
    Spring Boot 的核心註解是哪個?它主要由哪幾個註解組成的?啟動類上面的註解是@SpringBootApplication,它也是 Spring Boot 的核心註解,主要組合包含了以下 3 個註解:@SpringBootConfiguration:組合了 @Configuration 註解,實現配置文件的功能。
  • 不了解Java註解機制可不行
    無論是在JDK還是框架中,註解都是很重要的一部分,我們使用過很多註解,但是你有真正去了解過他的實現原理麼?你有去自己寫過註解麼?概念註解(Annotation),也叫元數據。一種代碼級別的說明。它是JDK1.5及以後版本引入的一個特性,與類、接口、枚舉是在同一個層次。
  • spring原理詳解,兩大核心IOC和AOP
    class屬性:要寫類的完整的名稱。-- 讓容器調用類的靜態方法來創建一個實例。factory-method屬性:用來指定靜態方法名。Bean1.組件掃描:定義一個包,spring掃描該包和其子包下的組件,如果這個組件上有特定的註解,spring就把這些組件納入到spring容器。
  • java注釋快捷鍵,Java中的常用註解
    一、常見的Java註解 1、JDK中自帶的註解:@Override表示覆蓋父類的方法,@Deprecated表示這個方法已經過時,在調用的時候編譯器會警告,方法上有條橫線,這個時候就可以使用 @Suppvisewarnings