如何解决Java Spring Scheduling Service无法获取新数据
我绝对是春季靴子的初学者,所以我希望有人能帮助我。
我想运行一项服务,该服务获取最新的用户条目,并每天在特定时间处理每个用户的用户数据。为此,我想我需要运行一个调度程序。
@Service
public class doSomethingDaily {
@Autowired
AccountRepository accountRepo; // extends CrudRepository
@Scheduled(fixedDelay = 2000,initialDelay = 1000)
public void doSomething() {
System.out.println("Is it time to do something?");
// just for testing if user1 actually got found
for( Account user : accountRepo.findAll() ) {
System.out.println("Found user: " + user.getName());
}
//check if it's time for doing something
// ...
for( Account user : accountRepo.findAll() ) {
System.out.println("Found user: " + user.getName());
// control/change some data from user
}
// ...
}
}
现在,我想测试doSomethingDaily实际上是否可以正常工作:
@RunWith(springrunner.class)
@SpringBoottest
@Transactional
public class doSomethingDailyTest {
@Autowired
AccountRepository accountRepo;
@Before
public void init() throws RepoAccessException {
Account user1 = new Account();
// use setter methods to fill user1 with data...
// ...
accountRepo.save( user1 );
}
@Test
public void testDaily() throws InterruptedException {
Thread.sleep(20000);
}
}
现在我看到消息“是时候做点什么吗?”几次,但没有显示“找到用户”消息...有人可以向我解释原因吗?
谢谢您阅读
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。