Spring Boot Dersleri i18n Uygulama Yerelleştirme
Spring Boot Dersleri‘ne devam ediyoruz.
Bu yazıda Spring Boot uygulamamızın gelen kullanıcı isteklerinin diline göre cevap verme işleminin nasıl olduğunu anlatacağım.
Yapacağımız uygulamamızda kullanıcının seçtiği dile göre cevap vereceğiz. i18n dediğimiz yani yerelleştirme işleminde uygulamamızın hata mesajları ya da front-end uygulamasında kullanıcıya gösterilen metinlerin bu yerelleştirme işleminde baştan sona yer alabilir.
Spring Boot uygulamamızı yapalım. Projemiz bir restapi olacak istek yapan kullanıcının diline göre “Merhaba Dünya” mesajı vereceğiz.
Maven bağımlılığımız aşağıdaki gibi olacaktır.
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
Code language: HTML, XML (xml)
Farklı dillerde farklı mesajlar gösterebilmemiz için mesajlarımızın çeşitli dillerde karşılık gelen tanımlamaları yapmalıyız. resources klasörünün altında her dile karşıllık gelen dosyaları oluşturacağız. Bunlar aşağıdaki gibi olacak.
- messages.properties
hello.message=Hello World
- messages.properties_tr
hello.message=Merhaba Dünya
- messages.properties_de
hello.message=Hallo Welt
hello.message parametresine karşılık gelen farklı diller ile mesajımızı verdik. Bu işlem bizim programımızın yerelleştirmesine olanacak sağlayacak.
Controller sınıfımızı oluşturalım.
@RestController
public class MessageController {
@Autowired
MessageSource messageSource;
@GetMapping("/")
public String index(Locale locale) {
return messageSource.getMessage("hello.message", null, locale);
}
}
Code language: CSS (css)
Controller sınıfımızda kullanıcının local bigilsini parametre olarak aldıktan sonra mesaj olarak hello.message ifadesine karşılık gelen dosyadan String bir değer döndürmektedir.
Test edebilmek için postman kullancağız.
İngilizce dili olarak postmandan isteğimizi gönderelim.

Türkçe dili olarak postmandan isteğimizi gönderelim.

Almanca dili olarak postmandan isteğimizi gönderelim.

No Comment! Be the first one.