반응형
Spring 3.0에서 AWS SQS와 연동하는 코드를 Kotlin으로 작성해보겠습니다. Spring 3.0에서는 AWS SDK를 직접 사용하여 SQS를 조작할 수 있습니다.
먼저, AWS SDK를 프로젝트에 추가해야 합니다. Maven을 사용한다면 pom.xml에 다음 종속성을 추가하세요
<dependency>
<groupId>software.amazon.awssdk</groupId>
<artifactId>sqs</artifactId>
<version>2.17.63</version> <!-- 최신 버전 확인 필요 -->
</dependency>
Gradle을 사용한다면 build.gradle 파일에 다음과 같이 추가하세요
implementation 'software.amazon.awssdk:sqs:2.17.63' // 최신 버전 확인 필요
이제 Kotlin 코드로 SQS를 사용하는 클래스를 생성해보겠습니다. 아래 코드는 SQS 큐에 메시지를 보내는 코드입니다
import software.amazon.awssdk.auth.credentials.DefaultCredentialsProvider
import software.amazon.awssdk.regions.Region
import software.amazon.awssdk.services.sqs.SqsClient
import software.amazon.awssdk.services.sqs.model.SendMessageRequest
class SQSService {
private val sqsClient = SqsClient.builder()
.region(Region.AP_NORTHEAST_2) // AWS 리전에 맞게 변경해주세요
.credentialsProvider(DefaultCredentialsProvider.create())
.build()
fun sendMessageToQueue(queueUrl: String, messageBody: String) {
val request = SendMessageRequest.builder()
.queueUrl(queueUrl)
.messageBody(messageBody)
.build()
sqsClient.sendMessage(request)
}
}
위 코드에서 sendMessageToQueue 함수는 SQS 큐에 메시지를 보내는 데 사용됩니다.
사용하려는 AWS 리전에 맞게 .region()을 변경해주세요. 또한, AWS 자격 증명 제공자를 설정하기 위해 .credentialsProvider() 부분도 필요한 경우 수정하세요.
사용 예시는 다음과 같습니다
fun main() {
val queueUrl = "YOUR_QUEUE_URL_HERE" // 사용할 SQS 큐의 URL로 변경해주세요
val sqsService = SQSService()
sqsService.sendMessageToQueue(queueUrl, "Hello, SQS!") // 메시지 내용을 변경하여 전송할 수 있습니다.
}
위 코드는 간단한 SQS 메시지 전송을 보여줍니다.
실제 사용하고자 하는 경우 AWS 자격 증명과 SQS 큐의 URL을 적절히 설정해주시기 바랍니다.
반응형
'개발' 카테고리의 다른 글
코딩 테스트를 위한 알고리즘 자료구조 정리 (0) | 2024.01.10 |
---|---|
개발 잘하기 (0) | 2024.01.02 |
코틀린(Kotlin) 에서 인라인 함수를 언제 사용해야 하나요? (0) | 2023.12.26 |
Parameter vs Argument 간단 정리 (0) | 2021.05.26 |
pinpoint 간단 소개과 배치&스케줄 어플리케이션 모니터링 하기 (0) | 2021.05.25 |