【发布时间】:2020-03-03 17:44:29
【问题描述】:
我在使用弹簧瞄准镜时遇到问题。我确信我的解决方案不是最佳的,但我不知道有更好的方法来做到这一点。你有什么建议吗?
这是我的问题:
我需要什么:
我正在尝试执行与 @RESTController 映射方法相同的操作,但会定期在后台执行,无需任何用户 http/s 调用。
我有什么:
目前,我有一些 @Service 范围为 @Scope(REQUEST) 的类,@RestController 从 http/s 调用中调用。
我正在尝试什么
我创建了一个新的@Component 类,其中包含一个@Scheduled 方法,该方法试图调用@Service,其范围为@Scope(REQUEST)。
我的问题:
@Scheduled 方法不能使用REQUEST 范围内的@Service,因为它们不在请求范围内,并且很难将所有相关服务更改为该操作。
谢谢!
【问题讨论】:
-
请求的所有逻辑都应该在服务方法中......所以让您的计划任务调用服务方法......
-
@RobOhRob 服务是请求范围的
-
为什么服务甚至请求范围?服务中是否有需要保留的状态?
标签: java spring spring-boot scope spring-scheduled