java的注解 @Resource
最近 SSH 框架中,service 层中每调用 DAO 层的接口都有在其前面加个 @Resource,耳闻叫做注解,但是究竟是个什么怪物,完全不懂
百度之:
一、
@Resource 这是使用到了 java 注解的一个机制。首先得明白 java 注解的机制是什么、原理以及有什么好处。
我这里只是简单介绍了 JAVA 中的注解的含义,具体使用方法和原理网上可以搜索到很详细的文章。
JAVA 中的注解:
java.lang.annotation.Retention 可以在您定义 Annotation 型态时,指示编译器如何对待您的自定义 Annotation,预设上编译器会将 Annotation 资讯留在 class 档案中,但不被虚拟机器读取,而仅用于编译器或工具程式运行时提供资讯。
二、对 java 注解有所认识之后,现在就来聊聊 @Resource 的用处了。
@Resource 的作用相当于 @Autowired,只不过 @Autowired 按 byType 自动注入,面 @Resource 默认按 byName 自动注入罢了。@Resource 有两个属性是比较重要的,分别是 name 和 type,Spring 将 @Resource 注释的 name 属性解析为 Bean 的名字,而 type 属性则解析为 Bean 的类型。所以如果使用 name 属性,则使用 byName 的自动注入策略,而使用 type 属性时则使用 byType 自动注入策略。如果既不指定 name 也不指定 type 属性,这时将通过反射机制使用 byName 自动注入策略。
三、通常我们在使用 java 依赖注入时,比较喜欢选择 Spring 的框架来达到我们的目的,而 Spring 框架在 2.5 版本后开始引入了 java 注解机制,如:@Resource。当然还可以通过看 Spring 框架的注解机制的使用来帮助学习对 java 注解的了解。
看了看,连感性的认识也谈不上,更别谈理解了,看来只得先硬记了,我想项目做多了久了,自然就会理解了,现在不用纠结于此,因为徒劳无益,貌似很多事情都是酱紫的