में 0.में एप्लिकेशन.प्रोपर्टीज की यूटीएफ -8 एन्कोडिंग विशेषताएँ कुछ कस्टम विशेषताओं को जोड़ती हैं।स्प्रिंग-बूट
custom.mail.property.subject-message=This is a ä ö ü ß problem
इस कक्षा में मेरे पास कस्टम विशेषताओं का प्रतिनिधित्व है।
@Component
@ConfigurationProperties(prefix="custom.mail.property")
public class MailProperties {
private String subjectMessage;
public String getSubjectMessage() {
return subjectMessage;
}
public void setSubjectMessage(String subjectMessage) {
this.subjectMessage = subjectMessage;
}
और यहाँ मैं का उपयोग अपने MailProperties
:
@Service
public class SimpleUnknownResponseMessage extends MailProperties implements UnknownResponseMessage{
private JavaMailSender javaMailSender;
@Autowired
public SimpleUnknownResponseMessage(JavaMailSender javaMailSender) {
this.javaMailSender = javaMailSender;
}
@Override
public void placeUnknownResponse(BookResponse bookResponse) {
MimeMessage message = javaMailSender.createMimeMessage();
try {
MimeMessageHelper helper = new MimeMessageHelper(message, "UTF-8");
helper.setSubject(this.getSubjectMessage());
javaMailSender.send(message);
} catch (MessagingException e) {
e.printStackTrace();
}
}
जबकि डिबगिंग मैं अपने this.getSubjectMessage()
चर यह मान के अंदर है कि देख सकते हैं: This is a ä ö ü à problem
। तो मेरे मेल भेजने से पहले मेरे पास पहले से ही एक यूटीएफ -8 एन्कोडिंग समस्या है।
मैंने पहले ही application.properties
फ़ाइल और उसके यूटीएफ -8 के एन्कोडिंग की जांच की है।
मेरा आईडीई (एसटीएस/ग्रहण) और परियोजना गुण यूटीएफ -8 पर भी सेट हैं।
application.properties
फ़ाइल में मेरे कस्टम विशेषताओं के टेक्स्ट के लिए मैं यूटीएफ -8 एन्कोडिंग कैसे सेट कर सकता हूं?
मुझे याद है कि जावा कहीं उम्मीद करता है कि '* .properties' फ़ाइलों को आईएसओ -885 9 -1 में एन्कोड किया गया है और यही कारण है कि वसंत 'application.properties' का व्यवहार करता है जैसे कि यह आईएसओ -885 9 -1 में है। यह प्रश्न देखें: [स्प्रिंग बूट डिफ़ॉल्ट गुण एन्कोडिंग परिवर्तन?] (Http://stackoverflow.com/questions/27882191/spring-boot-default-properties-encoding-change)। संभावित समाधान: गुण फ़ाइलों के बजाय YAML का उपयोग करें। – Jesper
@ जेस्पर हां, मैंने भी इस जवाब की जांच की। अभी भी उम्मीद है कि संपत्ति फ़ाइलों के लिए शायद एक और समाधान है। – Patrick