获得spring管理下的Bean的两种法:
一、实现spring的ApplicationContextAware接口获得上下文对象applicationContext。
applicationContext.getBean(BeanName)即可获得该bean对象。该bean可以是spring扫描目录下的类或接口名(默认该bean的首字母小写)。
二、@Configuration注解下的@Bean注解方法。
示例代码:
@Configuration
@ComponentScan(basePackages="com.shekhar.dictionary.dao")
public class LocalRedisConfig {
@Bean
public RedisConnectionFactory jedisConnectionFactory(){
JedisPoolConfig poolConfig = new JedisPoolConfig();
poolConfig.maxActive = 10;
poolConfig.maxIdle = 5;
poolConfig.minIdle = 1;
poolConfig.testOnBorrow = true;
poolConfig.testOnReturn = true;
poolConfig.testWhileIdle = true;
JedisConnectionFactory jedisConnectionFactory = new JedisConnectionFactory(poolConfig);
return jedisConnectionFactory;
}
@Bean
public StringRedisTemplate redisTemplate(){
StringRedisTemplate redisTemplate = new StringRedisTemplate(jedisConnectionFactory());
return redisTemplate;
}
}
使用方法:
@Inject
private StringRedisTemplate redisTemplate;
即可。