博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
spring注解
阅读量:6768 次
发布时间:2019-06-26

本文共 985 字,大约阅读时间需要 3 分钟。

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>会scan@component注释的类,但是它也会scan其它三个,因为其它三个本身是被@Component所注释的。

@Component

public @interface Service {}

@Component

public @interface Repository {}

@Component

public @interface Controller {}

@Rrepository和数据库访问有关,@Service是业务逻辑,它会调用@Repository中定义的方法来获取数据然后进行处理,然后再调用@Repository中的方法将处理后的数据写入数据库。

被这四个注解所标记的类对应的bean的名字:如果用小括号显示指定,那么,该名字即为该bean的名字,如果没有指定,那么该bean的名字为将被标记的类的类名去大写化,即把类名的第一个字母小写。

3 @Inject和@Named

这两个注解是JSR-330的一部分,从spring 3开始支持这些注解,它们的使用和spring的注解一样,只不过需要额外的jar包。

@Inject替代@Autowired执行注入,@Named替代@Component来声明一个Bean。

 

转载于:https://www.cnblogs.com/hustdc/p/9009215.html

你可能感兴趣的文章
spring security控制权限的几种方法
查看>>
其他消息中间件及场景应用(下2)
查看>>
tomcat性能优化
查看>>
fail2ban调用iptables过滤试探postfix账号ip
查看>>
我的友情链接
查看>>
必看!决定蓝领薪酬高低的因素
查看>>
alias别名设置
查看>>
关于Ubuntu的root密码
查看>>
杨辉三角 学习笔记
查看>>
Linux基础命令---uname显示计算机名称
查看>>
回指路由
查看>>
EVE-NG桥接至VMWare主机
查看>>
我的友情链接
查看>>
配置percona XtraDB Cluster
查看>>
高价值低价格的企业经营哲学
查看>>
linux的软链接和硬链接
查看>>
我的友情链接
查看>>
VMware VSphere 虚拟化&云计算学习配置笔记(七)
查看>>
android ViewPager适配器
查看>>
Listview 标题
查看>>