Lors de la validation avec Spring Boot, le message d'erreur par défaut est l'anglais.
Meinotto Bienputi. Perapera.
Je crée une application pour les Japonais, donc je veux la rendre japonaise. La japonaisisation elle-même est possible en créant un fichier appelé ValidationMessages.properties et en définissant des messages d'erreur, mais le fichier de propriétés nécessite une conversion Unicode, il ne peut donc pas être lu en direct.
org.hibernate.validator.constraints.NotEmpty.message = \u5165\u529b\u3057\u3066\u304f\u3060\u3055\u3044\u3002
Il existe également une méthode à prendre en charge avec un plug-in spécifique à l'IDE, mais cette fois, j'ai essayé une méthode pour accepter UTF8 du côté Spring Boot.
Au fait, ValidationMessages.properties écrit en UTF8 peut être lu par l'éditeur, mais lorsqu'il est affiché à l'écran, la partie japonaise est déformée comme ça.
Ci-dessous, j'ai reçu des commentaires sur les différences entre les versions de Spring Boot, je vais donc les capturer!
Spring Boot 2.1
Avec Spring Boot 2.1, il était possible de convertir en UTF-8 sans rien faire de spécial. La version JDK doit être 11.
Spring Boot 1.5.3
Je l'ai essayé avec Spring Boot 1.5.3, mais il semble qu'une erreur se produise lors de la substitution de public Validator getValidator (). (Le contenu de l'erreur est le même que celui affiché dans l'URL de référence) Si j'ai défini le bean de mvcValidator à la place, cela a fonctionné!
Merci à tous ceux qui m'ont appris: bow_tone1:
Remplacez getValidator de WebMvcConfigurerAdapter. C'était juste.
WebMvcConfig.java
WebMvcConfig.java
public class WebMvcConfig extends WebMvcConfigurerAdapter {
/*・ ・ ・ Omettre les paramètres non liés ・ ・ ・*/
/**
*Message de validation UTF-Laisser être réglé avec 8
*/
@Override
public Validator getValidator() {
return validator();
}
@Bean
public LocalValidatorFactoryBean validator() {
LocalValidatorFactoryBean validator = new LocalValidatorFactoryBean();
validator.setValidationMessageSource(messageSource());
return validator;
}
private MessageSource messageSource() {
ReloadableResourceBundleMessageSource messageSource = new ReloadableResourceBundleMessageSource();
//Vous pouvez également modifier le nom et le répertoire du fichier de propriétés
messageSource.setBasename("classpath:/ValidationMessages");
//UTF-Régler sur 8
messageSource.setDefaultEncoding("UTF-8");
return messageSource;
}
}
ValidationMessages.properties
ValidationMessages.properties
org.hibernate.validator.constraints.NotEmpty.message=Entrez s'il vous plait.
Je peux le lire. Vous pouvez le lire.
Hyahoi: détendu:
Spring Framework Documentation
fin