spring注解
Posted phoenix tree
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了spring注解相关的知识,希望对你有一定的参考价值。
1 @Resource和@Autowired
@Resource是j2ee的注解,@Autowired是spring的注解。
它们的作用是一样的,都是自动完成引用和bean的装配。
@Resource默认按照名称装配,@Autowired默认按照类型进行装配。
2 @Service @Controller @Repository @Component
这四者都是要告诉spring,给我生成被我们标记的类的Bean,这些Bean不用在xml中声明就可以直接拿来使用。它们并没有本质的区别,仅仅作为一个分类标签。@Repository @Component和@Service是可以互换使用的,并且不会出什么问题。@Controller用于spring mvc,servlet dispatcher会根据事先设置的路径将request转发给它们进行处理,所以其它三者不能和它互换。
<context:component-scan>会[email protected]注释的类,但是它也会scan其它三个,因为其它三个本身是被@Component所注释的。
@Component
public @interface Service {}
@Component
public @interface Repository {}
@Component
public @interface Controller {}
@Rrepository和数据库访问有关,@Service是业务逻辑,它会调用@Repository中定义的方法来获取数据然后进行处理,然后再调用@Repository中的方法将处理后的数据写入数据库。
被这四个注解所标记的类对应的bean的名字:如果用小括号显示指定,那么,该名字即为该bean的名字,如果没有指定,那么该bean的名字为将被标记的类的类名去大写化,即把类名的第一个字母小写。
以上是关于spring注解的主要内容,如果未能解决你的问题,请参考以下文章