Я новичок в Весенний ботинок. Кто-нибудь знает, как вызов метод amazonSQSClient () в основном классе?
@Configuration
public class AWSConfiguration {
@Value("${aws.access.key.encrypted}")
private String amazonAWSAccessKey;
@Value("${aws.secret.key.encrypted}")
private String amazonAWSSecretKey;
@Value("${aws.region.encrypted}")
private String amazonAWSRegion;
@Bean
public AmazonSQS amazonSQSClient() {
AWSCredentials awsCredentials = new BasicAWSCredentials(amazonAWSAccessKey, amazonAWSSecretKey);
AmazonSQS client = AmazonSQSClientBuilder.standard()
.withRegion(amazonAWSRegion)
.withCredentials(new AWSStaticCredentialsProvider(awsCredentials)).build();
return client;
}
}




Тебе не нужно. В этом суть использования аннотации @Bean, Spring будет вставлять экземпляр AmazonSQS всякий раз, когда он вам нужен. Итак, у вас может быть такой класс, который использует клиент SQS:
@Service
public class QueueService {
private AmazonSQS amazonSQS;
@Autowired
public QueueService(AmazonSQS sqs) {
this.amazonSQS = sqs;
}
}
Инфраструктура Spring достаточно умен, чтобы увидеть, что ей нужно внедрить экземпляр AmazonSQS, и, помечая метод amazonSqsClient аннотацией @Bean, вы говорите Spring использовать этот метод всякий раз, когда ему нужно создать экземпляр AmazonSQS.