1.为何${pay_order_risk_task.cron}值可以传到cron里,却不能传到execute参数里?
<context:property-placeholder location="classpath:dbservice-datasource.properties,classpath:task-config.properties" system-properties-mode="OVERRIDE"/>
@Scheduled(cron = "${pay_order_risk_task.cron}") // 每5秒执行一次
public void run() throws Exception {
super.execute("${pay_order_risk_task.cron}");
}
2.有没更好的方法传值到execute的参数里,从配置文件里取,已知道的方法
public class XXX implements InitializingBean {
@Value("#{xxxx['xxx.xxx']}")
private boolean xxx;
@Override
public void afterPropertiesSet() throws Exception {
xxx();
}
3.我想统一传参数的方式,最好能直接用${pay_order_risk_task.cron}
搞定
求各位大神给点建议。
不知道题主注意到
@PathVariable
这个注解没有,例如像下面这样的代码,请忽略上面的注解名字。
所以你需要做的就是实现自己的注解
LikePathVariable
,把注解注册到Spring
,大概在扫描package的时候可以确定这个值。不太确定实现起来会不会麻烦,有什么需要调整的地方。