spring常用的注釋:
@Component:標准一個普通的spring Bean類。
@Controller:標注一個控制器組件類。
@Service:標注一個業務邏輯組件類。
@Repository:標注一個DAO組件類
在代碼中注釋注入接口實現類時,
1.比如有一個接口如下:
-
1 public interface Filter { 2 public String doFilter(String param); 3 }
2.有如下接口實現類:
-
1 public class TimeFilter implements Filter { 2 3 @Override 4 public String doFilter(String param) { 5 return param.replace("aa", "bb"); 6 } 7 8 }
3.使用方式:在接口實現類定義位置添加注解 @Service("timeFilter"),如下:
-
1 import org.springframework.stereotype.Service; 2 @Service("timeFilter") 3 public class TimeFilter implements Filter { 4 5 @Override 6 public String doFilter(String param) { 7 return param.replace("aa", "bb"); 8 } 9 10 }
4.在需要注入的地方使用如下方式引入:
@Autowired
@Qualifier("timeFilter")
Filter timeFilter;
注意:
1.在引用實現類的時候,使用的是實現類的接口(這是因為 springMVC 代理的接口)。
2.在引用實現類的時候,需要使用@Qualifier 注解,注明使用哪個名稱的實現類(用來區分哪一個實例),當接口有且只有一個實現類時可以不注明其類名。