SPRING学习之IOC注解

注解特定的组件

- @Component :基本的注解,标识了一个受spring管理的组件

-@Repository:标识持久层

-@Service:标识服务层

-@Controller:标识表现层。

在使用注解后还要spring的配置文件中声明要扫描的包

       <!-- 注解方式必须在xml配置扫描这个包    base-package要扫描的包-->
       <!--  resource-pattern过滤指定的类-->
       <!--  context:include-filter子节点要包含的那些表达式的目标类-->
       <!--  context:exclude-filter子节点要排除的目标类-->

       <context:component-scan base-package="com.springTest" 
           resource-pattern="">
             <context:include-filter type="annotation" expression="org.springframework.stereotype.Service"/>
             <context:exclude-filter type="annotation" expression="org.springframework.stereotype.Repository;"/>
       </context:component-scan>



@Autowired

注入属性

 @Autowired

@Qualifier("UserDao")//指定那些指定的哪些实现类

   private UserDao userDao;

还可以下面这样加

  @Autowired
//指定那些指定的哪些实现类
public void setUserDao(@Qualifier("UserDao")UserDao userDao) {
this.userDao = userDao;
}

第二种注入属性

 @Resource(name="userDao")

     private UserDao userDao;


Spring的Java配置方式

Java配置是Spring4.x推荐的配置方式,可以完全替代xml配置。

Spring的Java配置方式是通过 @Configuration和 @Bean 这两个注解实现的:

1、@Configuration 作用于类上,相当于一个xml配置文件;

2、@Bean 作用于方法上,相当于xml配置中的<bean>;

@Configuration//通过该注解来表明该类是一个Spring的配置,相当于一个xml文件

@ComponentScan(basePackages="com.nari") //配置扫描包

publicclass SpringConfig{

   

    @Bean// 通过该注解来表明是一个Bean对象,相当于xml中的<bean>

    public UserDAO getUserDAO(){

        returnnew UserDAO(); // 直接new对象做演示

    }  

}




猜你喜欢

转载自blog.csdn.net/qq_36697880/article/details/80875727