Spring注解中@Configuration和@Configurable的区别

@Configuration
该注解是可以用来替代XML文件。
以前我们配置bean时,都是写在applicationContext.xml文件中的。
有了这个注解后,我们就可以编写一个类在其上面加上该注解。即配置类。
在配置类中可以在方法上加@Bean注解定义其中的Bean

@Configurable
现在假设,我们想在非Spring管理的类中使用依赖注入;
比如:手动new出来的对象,正常情况下,Spring是无法依赖注入的,这个时候可以使用@Configurable注解;

原文地址:https://www.cnblogs.com/fanrenren/p/11372896.html

时间: 2024-11-13 09:55:36

Spring注解中@Configuration和@Configurable的区别的相关文章

Spring 注解中@Resource 和 @Authwired 的区别

@Resource的作用相当于@Autowired,只不过@Autowired按byType自动注入,而@Resource默认按 byName自动注入罢了.@Resource有两个属性是比较重要的,分是name和type,Spring将@Resource注解的name属性解析为bean的名字,而type属性则解析为bean的类型.所以如果使用name属性,则使用byName的自动注入策略,而使用type属性时则使用byType自动注入策略.如果既不指定name也不指定type属性,这时将通过反射

spring注解中@component是什么意思

@Component("userManager") public class UserManagerImpl implements UserManager { private UserDao userDao; public UserDao getUserDao() { return userDao; } @Resource public void setUserDao(UserDao userDao) { this.userDao = userDao; } /* * (non-Java

Spring MVC注解中@PathVariable和@RequestParam的区别

@PathVariable注解的用法和作用 映射 URL 绑定的占位符 spring3.0的一个新功能:接收请求路径中占位符的值 通过 @PathVariable 可以将 URL 中占位符参数绑定到控制器处理方法的入参中:URL 中的 {xxx} 占位符可以通过注解@PathVariable(“xxx“) 绑定到操作方法的入参中. @RequestMapping(value = "/index/{id}" 请求路径:http://localhost:8080/hello/user/in

Spring AOP中 args和arg-names的区别

这两天在看aop aspectj的各种语法,发现里面有两个概念 args和arg-names很容易混淆,网上也基本没说清楚,所以就动手试了一下,发现还是自己试试比较好理解 先说结论: args是和execution用在一起,用来过滤要被代理的方法的,如果不和arg-names一起用,那么用法是args(类名,类名...). 如果和arg-names(参数名1,参数名2...)一起用,那么用法是args(参数1,参数2...),其中,参数1和参数2的类型由arg-names所代表的方法的参数确定

Spring bean中id和name的区别

最近在开发项目的时候发现spring的BeanFactory创建bean的时候有时候有2种不同的配置,即<bean id="test" class="com.TestImpl">与<bean name="test" class="com.TestImpl">,下面一起分析一下这2种配置的区别: 1.命名规范.id属性命名必须满足xml命名规范,而name属性命名可以不用遵守.不论是id属性还是name属

spring配置中classpath: 与classpath*:的区别

classpath和classpath*区别:  classpath:只会到你的class路径中查找找文件. classpath*:不仅包含class路径,还包括jar文件中(class路径)进行查找. 注意: 用classpath*:需要遍历所有的classpath,所以加载速度是很慢的:因此,在规划的时候,应该尽可能规划好资源文件所在的路径,尽量避免使用classpath*. classpath*的使用: 当项目中有多个classpath路径,并同时加载多个classpath路径下(此种情况

Spring(一) Spring配置文件中classpath和classpath*的区别

classpath 只会到你的class路径中查找找文件. classpath* 不仅包含class路径,还包括jar文件中(class路径)进行查找. class路径 src不是classpath,WEB-INF/classes及WEB-INF/lib才是classpath lib和classes同属classpath,两者的访问优先级为: lib>classes. 参考文章 java项目中Classpath路径到底指的是哪里 原文地址:https://www.cnblogs.com/lyld

Spring注解基础学习总结

1.依赖注入注解: @Component:Bean注入到Spring容器组件(通用) @Scope(ConfigurableBeanFactory.SCOPE_PROTOTYPE):Bean作用域( SCOPE_PROTOTYPE:每次注入bean就是一个新的Bean SCOPE_SINGLETON:单例 ) @Repository:标记该类为Dao数据访问层 @Service:标记该类为Service业务逻辑层 @Controller:标记该类为Controller控制访问层 @Autowir

spring注解@Scheduled中fixedDelay、fixedRate和cron表达式的区别

<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:context="http://www.springframework.org/sch