【发布时间】:2020-03-10 23:20:05
【问题描述】:
我正在尝试使用弹簧执行器进行健康检查。我需要执行健康检查的网址很少,但调用它们的方法非常相似。我试图创建一个基类,它实现 healthindicator 和从 base 扩展的子类,它们传递实际的 url,然后调用 health 方法。有更好的方法吗?
基础健康检查类
@Component
public class BaseHealthCheck implements HealthIndicator{
private String url;
@Override
public Health health() {
// call url
return Health.up().build();
}
private void setUrl(String url){
this.url = url
}
}
儿童班 1
@Component
public class Child1HealthCheck extends BaseHealthCheck {
@Value("${childurl1}")
private String url;
@Override
public Health health() {
super.health();
}
@PostConstruct
private void setUrl(){
super.setUrl(url);
}
}
儿童 2 班
@Component
public class Child2HealthCheck extends BaseHealthCheck {
@Value("${childurl2}")
private String url;
@Override
public Health health() {
super.health();
}
@PostConstruct
private void setUrl(){
super.setUrl(url);
}
}
【问题讨论】:
标签: java spring spring-boot