//如何将下面的java查询放在switch case中?我正在使用spring-mobile项目,我需要将以下代码放在switch帮助中。
try {
if (device.isMobile()) {
redirectUri = cfg.getEmail().getVerification().getMobile_success_redirect_url();
}
} catch (Exception ex) {
redirectUri = cfg.getEmail().getVerification().getMobile_failure_redirect_url();
logger.error("Failed to verify email. Cause: {}", ex);
}
try {
if (device.isTablet()) {
redirectUri = cfg.getEmail().getVerification().getTablet_success_redirect_url();
}
} catch (Exception ex) {
redirectUri = cfg.getEmail().getVerification().getTablet_success_redirect_url();
logger.error("Failed to verify email. Cause: {}", ex);
}
try {
if (device.isNormal()) {
redirectUri = cfg.getEmail().getVerification().getWeb_success_redirect_url();
}
} catch (Exception ex) {
redirectUri = cfg.getEmail().getVerification().getWeb_failure_redirect_url();
logger.error("Failed to verify email. Cause: {}", ex);
}
response.sendRedirect(redirectUri);发布于 2020-05-31 20:12:35
阅读@Naman的评论。我同意,这里有更多的细节。
我不确定device类型的类是否在您的控制之下。
但是如果是这样的话,您可能应该有一个表示设备类型的字段,它可以是一个带有3个值MOBILE, TABLET, NORMAL的枚举。
现在,您可以在此Enum上使用一个切换用例,每个用例都包含用于该特定用例的代码。
此切换用例的方法应接受两个参数,即新创建的DeviceType枚举和由cfg.getEmail().getVerification()返回的对象。
粗略的概述,但我希望你能明白这一点。
String getRedirectUri(DeviceType deviceType, Verification verification) { switch(deviceType) { case TABLET: case MOBILE: case NORMAL: default } }
https://stackoverflow.com/questions/62103784
复制相似问题