spring注解识别一个接口的多个实现类方法,在引用类中匹配到正确的实现类
接口如下:
public interface Filter {
public String doFilter(String param);
}
接口实现类:
public class TimeFilter implements Filter {
@Override
public String doFilter(String param) {
return param.replace("aa", "bb");
}
}
public class TimeFilter_B implements Filter {
@Override
public String doFilter(String param) {
return param.replace("aa", "bb");
}
}
使用方式:在接口实现类定义位置添加注解 @Service("timeFilter"),如下:
import org.springframework.stereotype.Service;
@Service("timeFilter")
public class TimeFilter implements Filter {
@Override
public String doFilter(String param) {
return param.replace("aa", "bb");
}
}
在需要注入的地方使用如下方式引入:
@Autowired
@Qualifier("timeFilter") //指定实现类
Filter timeFilter;