假设我有一个实用程序类DateUtil(见下文).要使用此方法,调用方法使用DateUtils.getDateAsString(aDate).删除静态修饰符并使DateUtil成为一个spring bean(请参阅DateUtilsBean)并将其注入调用类或者保持原样是不是更好?
我可以看到使用静态的一个缺点是关于模拟的问题,请参阅如何使用静态方法进行模拟?
public class DateUtils {
public static String getDateAsString(Date date) {
String retValue = "" // do something here using date parameter
return retValue;
}
}
Run Code Online (Sandbox Code Playgroud)
春豆版
@Component
public class DateUtilsBean {
public String getDateAsString(Date date) {
String retValue = "" // do something here using date parameter
return retValue;
}
}
Run Code Online (Sandbox Code Playgroud) 我知道如何访问Java Spring boot 中的类application.properties
中的值@Service
,如下所示
@Service
public class AmazonClient {
@Value("${cloud.aws.endpointUrl}")
private String endpointUrl;
}
Run Code Online (Sandbox Code Playgroud)
但我正在寻找一个选项来直接在任何类中访问该值(没有 @Service 注释的类)
例如
public class AppUtils {
@Value("${cloud.aws.endpointUrl}")
private String endpointUrl;
}
Run Code Online (Sandbox Code Playgroud)
但这又回来了null
。任何帮助,将不胜感激。我已经读过这里但没有帮助。