通过注解的方式在spring中注册bean

来源:互联网 发布:恩华三唑仑片淘宝 编辑:程序博客网 时间:2024/05/29 17:41

1.首先你得让spring容器知道你编写的类是使用了注解方式

在sessionFactory的属性packageToScan中写上你的使用了注解类的包名  注意:如果你是使用的list,在value之间一定不要有空格,否者容器不能扫描到类。

2.几种有必要知道的注解含义

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

@Controller 对应的是表现层的bean  也就是action 使用@Controller 注解标识UserAction后,就表示要把UserAction交给spring容器处理,在spring容器中就会存在一个名字叫做

UserAction的action。spring默认是单例模式(scope=“singleton”),这样只会创建一个action对象,每次访问都是同一个action,数据不安全,

如果想要每次访问的时候都创建一个action 则只需要scope=“protoType”

@Service   service对应的是业务层   @Service(“userService”)注解是告诉Spring,当spring要创建UserServiceimpl实例时,bean的名字必须叫做(“userService”),这样当

action使用UserServiceImpl实例的时候,只需要在action里面注入一个userService即可,这样spring就能注入userService到action里面。

注意:在action里面声明的“userService”变量的类型必须是“UserServiceImpl”或者“userService”的父类,否者由于类型不一致而导致无法注入,由于在userService中使用了@Resource注解去标注,并且指明了其name=“userService”,这就等于告诉了spring,说我action要实例化一个“userService”,你spring快点帮我实例化好,然后给我,


@Repository  对应数据库访问层的bean  

@Repository(value=“userDao”)注解是告诉spring让spring创建一个名字叫做userDao的UserDaoImplements的实例,

0 0