Java註解——新手入門便於自己查看

@Data註解 與 lombok

說明:

要使用 @Data 註解要先引入lombok,lombok 是什麼,它是一個工具類庫,可以用簡單的註解形式來簡化代碼,提高開發效率。

@Data : 注在類上,提供類的get、set、equals、hashCode、canEqual、toString方法
@AllArgsConstructor : 注在類上,提供類的全參構造
@NoArgsConstructor : 注在類上,提供類的無參構造
@Setter : 注在屬性上,提供 set 方法
@Getter : 注在屬性上,提供 get 方法
@EqualsAndHashCode : 注在類上,提供對應的 equals 和 hashCode 方法
@Log4j/@Slf4j : 注在類上,提供對應的 Logger 對象,變量名爲 log

 

示例:

@Data
public class Person {
    private String name;
    private String address;
    private Integer age;
    private String hobbit;
    private String phone;
}

詳細的文章:https://www.jianshu.com/p/0ac771cafbf4 


@Autowired 註解

說明:

@autowired註解可以對類成員變量、方法、構造函數進行標註,完成自動裝配功能。

<bean id="student" class="com.autowiredtest.entity.Student">
    <property name="name" value="小紅"/>
</bean>
<bean id="student02" class="com.autowiredtest.entity.Student">
    <property name="name" value="小明"/>
</bean>

我們在使用@Autowired自動裝配實例時可以這樣寫:

@Autowired
private Student student;

@Autowired
private Student student02;

因爲Student 的兩個bean id分別爲student和student02,恰好我們的變量名也叫student和student02,故不會報錯。假如變量名爲stu沒有對應的bean id,那麼就會在使用時拋出異常BeanCreationException。

而如果Spring 使用的版本低於3.0,那麼,不允許一個類有多個Bean,即使變量的名稱和bean id相同。

如果非要有多個bean怎麼辦呢?

此時,可以結合@Qualifier註解一起使用,@Qualifier註解的作用就是幫助Spring容器找到bean,使用時通過@Qualifier(name="beanid")的name屬性指明要使用哪個bean,所以Spring容器就知道去注入哪個具體的bean了。那麼此時Spring容器裏可以有這樣的存在:一個類多個bean。

@Qualifier的作用就是消除歧義,指明使用哪個bean。

@Autowired
@Qualifier(name="student02")
private Student stu;

這時候我們也可以使用@Resource註解實現同樣的功能

@Resource(name="student02")
private Student stu;

詳細教程:https://www.cnblogs.com/xiaoxi/p/5935009.html


 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章