1.对于常量的抽取
····比如我们要往redis中存一个手机验证码,如果是注册的话,我们一般是使用业务键加上手机号,那么这个业务键就可以抽取出来。
public class AllConstants {
// 基本常量
public class BaseConstants {
public static final long SECONDS_ONE_MINUTES = 60;
public static final long MILLIS_ONE_MINUTES = 60000;
public static final long MILLIS_FIVE_MINUTES = 300000;
}
// 前缀常量
public class PreConstants {
// 短信验证码
public static final String KEY_SMS_PREFIX = "register:%s";
//public static final String KEY_SMS_PREFIX = "register:%s,,,%s";
}
}
取值通过
String smsKey = String.format(AllConstants.PreConstants.KEY_SMS_PREFIX, 手机号);
可以使用idea输入AllConstants.PreConstants.KEY_SMS_PREFIX.format可以自动提示转换成上面的代码
smsKey的结果就是"register:手机号"。
2.对于配置的抽取
yaml文件
verify:
img:
length: 4
expire: 60
weight: 140
height: 40
sms:
length: 6
expire: 300
配置类取值,@Value(“${verify.img.length}”)去单个;
我们取多个使用@ConfigurationProperties
@ConfigurationProperties(prefix = "verify.img")
@Component
@Data
public class ImgProperties {
public Integer length;
public Long expire;
public Integer weight;
public Integer height;
}
@ConfigurationProperties(prefix = "verify.sms")
@Component
@Data
public class SmsProperties {
public Integer length;
public Long expire;
}
使用直接通过@AutoWired注入,然后调用get方法取值就可以。