Spring注解注入

                                                                     Spring注解注入

1、使用注解来向Spring容器注册Bean

spring 通过classpath中扫描标签类来实现

在spring.xml 的配置如下:

 <context:annotation-config />
    <context:component-scan base-package="msg.common.bo" />

加载上面配置后,spring 会自动扫描msg.common.bo下加有注释的类

a.@Resource默认是按照名称来装配注入的,只有当找不到与名称匹配的bean才会按照类型来装配注入

eg:

     java:  

     @Resource(name = "PaymentAccountQuery")
       private PaymentAccountQuery paymentAccountQuery;

    xml:

    

b.@Servie默认是

c.@Autowire 默认按照类型来装配,可以和@Qualifier 联合使用可以使用根据名称进行

d.@Qualifiler 限定符, 用于细选

e.@Component  可以在XML中引用

 

 @Component
    是所有受Spring 管理组件的通用形式,@Component注解可以放在类的头上

f.@Service  对应的是业务层的bean

g.@Resource 是注入方式

@Resource(name ="实例对象名")

 private 类名  实例对象名

 

 

   1、@controller 控制器(注入服务)
     2、@service 服务(注入dao)
     3、@repository dao(实现dao访问)
     4、@component (把普通pojo实例化到spring容器中,相当于配置文件中的<bean id="" class=""/>)
     @Component,@Service,@Controller,@Repository注解的类,并把这些类纳入进spring容器中管理。 
     下面写这个是引入component的扫描组件 
     <context:component-scan base-package=”com.mmnc”>    

      其中base-package为需要扫描的包(含所有子包) 
       1、@Service用于标注业务层组件 
       2、@Controller用于标注控制层组件(如struts中的action) 
       3、@Repository用于标注数据访问组件,即DAO组件. 
       4、@Component泛指组件,当组件不好归类的时候,我们可以使用这个注解进行标注。    
           @Service public class UserServiceImpl implements UserService { } 
           @Repository public class UserDaoImpl implements UserDao { } getBean的默认名称是类名(头字母小写),如果想自定义,可以@Service(“***”)这样来指定,这种bean默认是单例的,如果想改变,可以使用@Service(“beanName”) 
 

这是因为该注解的作用不只是将类识别为Bean,同时它还能将所标注的类中抛出的数据访问异常封装为 Spring 的数据访问异常类型。 Spring本身提供了一个丰富的并且是与具体的数据访问技术无关的数据访问异常结构,用于封装不同的持久层框架抛出的异常,使得异常独立于底层的框架。

 

 

 

         

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

wangxiaoming

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值