package com.jty.wsxt.infrastructure.code; import com.jty.wsxt.infrastructure.code.image.ImageCodeGenerator; import com.jty.wsxt.infrastructure.code.sms.DefaultSmsCodeSender; import com.jty.wsxt.infrastructure.code.sms.SmsCodeSender; import com.jty.wsxt.infrastructure.properties.SecurityProperties; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.autoconfigure.condition.ConditionalOnMissingBean; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; /** * 验证码配置类 * 为了方便自定义以及复用 * * @author Jason * @since 2019/1/2 14:47 */ @Configuration public class ValidateCodeBeanConfig { @Autowired private SecurityProperties securityProperties; /** * * 当不存在imageValidateCodeGenerator的bean时,用以下配置 * @return */ @Bean @ConditionalOnMissingBean(name = "imageValidateCodeGenerator") public ValidateCodeGenerator imageValidateCodeGenerator() { ImageCodeGenerator imageCodeGenerator = new ImageCodeGenerator(); imageCodeGenerator.setSecurityProperties(securityProperties); return imageCodeGenerator; } /** * 短信验证码发送方法 * @return */ @Bean @ConditionalOnMissingBean(SmsCodeSender.class) public SmsCodeSender smsCodeSender(){ return new DefaultSmsCodeSender(); } }