`
wlo_o
  • 浏览: 50502 次
  • 性别: Icon_minigender_1
  • 来自: 青岛
社区版块
存档分类
最新评论

Spring发送电子邮件发件人中文名乱码问题解决方法

    博客分类:
  • Java
阅读更多

网站重构,一部分用户动作需要发送邮件通知给相关人员,但是通过spring发送的邮件在信箱里接收后会显示乱码,google了一下找了解决方法,记录一下。

 

发件人参数

mail.from=OECP社区 <webmaster@po-soft.com>

 

 

原本使用

helper.setFrom(from.getBytes("GBK"),"ISO-8859-1");

 邮箱里打开邮件后,发件人显示显示乱码

 

 

 

修改后

helper.setFrom(javax.mail.internet.MimeUtility.encodeText(from , "utf-8","B"))

 收件人显示正常,但是发件人内包含回复地址。

 

继续修改

helper.setFrom(getFromInternetAddress(from))

 

public final String regex1 = ".*[<][^>]*[>].*"; 	//判断是 xxxx <xxx>格式文本
public final String regex2 = "<([^>]*)>";		//尖括号匹配
/**
 * 获取发件人
 * @param from
 * @return
 */
public InternetAddress getFromInternetAddress(String from) {
	String personal = null;
	String address = null;

	if(from.matches(regex1)){
		personal = from.replaceAll(regex2, "").trim();
		Matcher m = Pattern.compile(regex2).matcher(from);
		if(m.find()){
			address = m.group(1).trim();
		}
		try {
			return new InternetAddress(address, personal, "gb2312");
		} catch (UnsupportedEncodingException e) {
			e.printStackTrace();
		}
	}else{
		try {
			return new InternetAddress(from);
		} catch (AddressException e) {
			e.printStackTrace();
		}
	}
	return null;
}

 邮件发件人显示正常了

 

  • 大小: 6.8 KB
  • 大小: 10.9 KB
  • 大小: 7.4 KB
分享到:
评论

相关推荐

    FORM表单中文乱码问题分析与解决

    解决方法:解决中文乱码问题的方法有两种,一种是使用POST方式,另一种是使用GET方式。 1、POST方式:在POST方式中,我们可以使用request.setCharacterEncoding("UTF-8")来指定解码方式为UTF-8。这将使服务器使用...

    Spring Boot整合邮件发送并保存历史发送邮箱

    Spring Boot整合邮件发送并保存历史发送邮箱 项目描述 项目主要是使用 Spring Boot 发送邮件,主要的技术点有: 1、Spring Boot +mybatis的整合 2、Spring Boot项目中jsp的使用 3、Spring Boot 发送邮件...

    spring注解出现中文乱码

    ### Spring框架中注解出现中文乱码的问题解析与解决方案 #### 问题背景 在Spring框架的应用开发中,尤其是在处理HTTP请求时,经常会遇到通过JSON格式传递数据的情况。然而,在某些场景下,开发者可能会遇到中文...

    springMVC解决中文乱码

    下面我们将详细介绍 SpringMVC 中解决中文乱码问题的思路和方法。 配置文件中的字符编码 在 SpringMVC 中,我们可以在 web.xml 文件中配置字符编码。例如,我们可以在 web.xml 文件中添加以下配置: ```xml ...

    struts中文乱码问题解决详细步骤

    解决这个问题通常涉及到编码设置的调整,下面将详细介绍两种方法来解决Struts中的中文乱码问题。 **方法一:配置Filter** 1. **添加过滤器**:首先,我们需要在Web应用的`web.xml`文件中添加一个`...

    freemarker 中文乱码解决

    在处理Freemarker模板引擎时,中文乱码问题是一个常见的挑战,尤其是在国际化应用中。...然而,当涉及到非英文字符,...通过上述方法,可以有效地解决Freemarker中出现的中文乱码问题,提高Web应用的稳定性和用户体验。

    springboot乱码问题解决方案

    为了解决这个问题,本文将详细介绍SpringBoot乱码问题解决方案,并提供详细的示例代码和配置方法。 一、乱码问题的原因 乱码问题的原因是由于字符编码的不匹配,导致文字无法正确显示。在SpringBoot项目中,默认...

    拦截器解决中文乱码问题

    "拦截器解决中文乱码问题"这个主题,主要关注的是如何通过使用拦截器(Interceptor)这一技术手段来预防或解决乱码现象。拦截器是Spring MVC框架中的一个重要组件,它可以对HTTP请求进行预处理和后处理,从而在数据...

    java中文乱码的解决方法

    #### 方法一:与Spring集成解决中文乱码问题 针对与Spring框架集成的应用,可以通过在`web.xml`文件中进行相应的配置来解决中文乱码问题。具体步骤如下: 1. **修改Web配置文件**: 在`web.xml`文件中加入以下...

    JSP中解决中文乱码的万能方法

    ### JSP中解决中文乱码的万能方法 在JSP开发过程中,中文乱码问题是一个常见的技术难题,尤其在处理客户端与服务器之间的数据交互时更为突出。本文将详细介绍几种有效的解决方案,帮助开发者应对各种场景下的乱码...

    log4j乱码问题解决办法

    然而,在使用过程中可能会遇到字符编码的问题,特别是中文乱码的情况,这不仅会影响日志的可读性,还可能导致难以追踪的问题。本文将详细介绍如何通过修改`log4j.properties`配置文件来解决log4j中的乱码问题。 ###...

    如何在Spring中解决中文乱码的方法.doc

    ### 如何在Spring中解决中文乱码的方法 #### 背景介绍 在Web开发过程中,中文乱码问题经常困扰开发者。特别是在早期的Java Web框架(例如本案例中提到的Spring 1.2.4、Struts 1.1、Hibernate 3.0.5等)中,这一问题...

    java解决解决get中文乱码问题

    ### Java解决GET请求中文乱码问题详解 在Java Web开发中,经常遇到的一个问题是处理GET请求中的中文参数时出现乱码。这个问题主要是因为浏览器发送GET请求时,参数默认使用ISO-8859-1编码格式,而服务器端通常采用...

    jsp传值中文乱码问题解决方法示例介绍.docx

    本篇将详细介绍如何解决JSP传值过程中出现的中文乱码问题。 首先,我们需要理解乱码产生的原因。在网页中,数据的编码和解码过程需要保持一致。如果服务器和客户端之间使用的字符编码不同,就可能出现乱码。例如,...

    spring boot使用i18n时properties文件中文乱码问题的解决方法

    Spring Boot 使用 i18n 时 properties 文件中文乱码问题的解决方法 Spring Boot 是一个流行的 Java 框架,用于快速开发 Web 应用程序。然而,在使用 Spring Boot 时,遇到中文乱码问题的可能性很高,特别是在使用 ...

    关于MyEclipse5.5合成SSH后出现中文乱码的问题解决方法之一

    进一步分析发现,使用MyEclipse 6.5重新生成Hibernate和Spring的配置后,中文乱码问题得到了解决。这暗示了问题可能源于MyEclipse 5.5生成的SSH配置包与6.5版本的不同。开发者列出了两个版本生成的SSH包,发现5.5...

    解决struts2.1.6+spring+hibernate 中文乱码

    ### 解决Struts2.1.6 + Spring + Hibernate 中文乱码问题 在Web开发过程中,特别是使用Java EE框架时,字符编码问题一直是开发者关注的重点之一。对于使用Struts2.1.6、Spring以及Hibernate这三个框架组合的项目而...

    struts2的中文乱码问题解决

    ### Struts2中文乱码问题解决方案 在使用Struts2框架进行Web开发的过程中,中文乱码问题是一个常见的挑战。这不仅影响用户体验,还可能导致数据不一致等问题。为了解决这一问题,我们需要理解其背后的原理,并采取...

    Spring MVC整合IReport生成PDF及中文不显示、乱码解决

    通过以上步骤,你就可以在Spring MVC项目中成功整合IReport并解决中文乱码问题。记住,对于任何Web开发,良好的代码组织和清晰的文档都是至关重要的,这将使你的项目更易于维护和扩展。在实际操作中,可能还会遇到...

Global site tag (gtag.js) - Google Analytics