zoukankan      html  css  js  c++  java
  • springMVC 使用注解注入接口实现类

    spring常用的注释:

     
    @Component:标准一个普通的spring Bean类。
    @Controller:标注一个控制器组件类。
    @Service:标注一个业务逻辑组件类。
    @Repository:标注一个DAO组件类

    在代码中注释注入接口实现类时,

    1.比如有一个接口如下: 

     
    1. 1 public interface Filter {  
      2     public String doFilter(String param);  
      3 }  

    2.有如下接口实现类:

     
    1. 复制代码
      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. 复制代码
       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 注解,注明使用哪个名称的实现类(用来区分哪一个实例),当接口有且只有一个实现类时可以不注明其类名。

  • 相关阅读:
    MySQL++:Liunx
    MySQL++:liunx 安装 MySQL
    MySQL++:MySQL 相关机制参数解释说明
    linux++:Linux
    linux++:基本操作命令
    coding++:java正则表达式获取指定HTML标签的指定属性值
    mongodb++:mongodb 基本语法
    xml模块
    shelve模块简单用法
    shutil模块
  • 原文地址:https://www.cnblogs.com/zhoading/p/11061868.html
Copyright © 2011-2022 走看看