J'exécute une application Spring Boot sous Windows et elle utilise l'encodage Windows-1252. Cependant, le programme java autonome utilise l'encodage UTF-8. Comment puis-je forcer spring boot à utiliser UTF-8. Le code ci-dessous produit ? ???. J'utilise la commande suivante en utilisant jar -jar target \spring -boot-example.jar
J'ai vérifié que dans le programme Power Shell, le jeu de caractères par défaut est Windows-1252 (System.Text.Encoding)::Default.
public class SpringBootConsoleApplication implements CommandLineRunner {
public static void main(String[] args) throws Exception {
SpringApplication.run(SpringBootConsoleApplication.class, args);
}
@Override
public void run(String... args) throws Exception {
System.out.println("Default Charset=" + Charset.defaultCharset());
System.out.println("test::" +"الرياض");
}
}
J'ai essayé les options ci-dessous dans application.properties sans succès :
# Charset of HTTP requests and responses. Added to the "Content-Type" header if not set explicitly.
spring.http.encoding.charset=UTF-8
# Enable http encoding support.
spring.http.encoding.enabled=true
# Force the encoding to the configured charset on HTTP requests and responses.
spring.http.encoding.force=true