我有一个使用spring boot
和redis
构建的服务,它可以监听HTTP
的请求。
我希望服务器启动时,它会在Redis缓存中填充一些预定义的数据。
我考虑过要拥有一个.yml
文件,当服务启动时,它会使用该/addData
文件的信息来调用.yml
之类的端点;但是我认为这不是实现我目标的有效方法。
使用redis
中缓存的数据来启动服务的最佳选择是什么?
答案 0 :(得分:0)
在EventListener或main方法上有2个选项
@EventListener(ApplicationReadyEvent.class)
public void loadRedis() {
//do the work here
}
另一个选择是在springbootapplication main方法中执行该操作。
public static void main(final String[] args) {
ConfigurableApplicationContext context =
SpringApplication.run(Application.class, args);
context.getBean(Whatever.class).loadRedis();
}
答案 1 :(得分:0)
使用JedisPool
public static void initCache() {
jedisPool = new JedisPool( new JedisPoolConfig() , "localhost",8081);
}