@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