`
tiwson
  • 浏览: 333022 次
  • 性别: Icon_minigender_1
  • 来自: 广州
文章分类
社区版块
存档分类
最新评论

关于javamail在linux服务器上发送乱码的解决方法,搜了N多资料

阅读更多
不写那么多了,直接把源码放上来吧


public static void send(Email email) {
		try {

			Properties p = new Properties(); // Properties p =
												// System.getProperties();
			p.put("mail.smtp.auth", "true");
			p.put("mail.transport.protocol", "smtp");
			p.put("mail.smtp.host", "你的邮件服务器");
			p.put("mail.smtp.port", "端口");
			// 建立会话
			Session session = Session.getInstance(p);
			Message msg = new MimeMessage(session); // 建立信息

			msg.setFrom(new InternetAddress("发件人邮箱")); // 发件人

			String toList = getMailList(email.getTo());//收件人列表
			new InternetAddress();
			InternetAddress[] iaToList = InternetAddress.parse(toList);

			msg.setRecipients(Message.RecipientType.TO, iaToList); // 收件人

			msg.setSentDate(new Date()); // 发送日期
			BASE64Encoder enc = new BASE64Encoder();
//--------------------以下是重点内容-------------------
			String subject = new String(email.getHead().getBytes("GB18030"),Charset.defaultCharset());
			msg.setSubject("=?GB18030?B?" + enc.encode(subject.getBytes()) + "?="); // 邮件主题
			msg.setContent(email.getContent(), "text/html;charset=GB18030");// 邮件内容

//--------------------结束--------------------------
			// 邮件服务器进行验证
			Transport tran = session.getTransport("smtp");
			tran.connect("邮件服务器地址", "用户名", "密码");
			
			tran.sendMessage(msg, msg.getAllRecipients()); // 发送
			//System.out.println("邮件发送成功");
		} catch (Exception e) {
			e.printStackTrace();
		}
	}
分享到:
评论

相关推荐

    linux服务器报警—使用javamail

    总结起来,使用JavaMail在Linux服务器上发送报警邮件,需要理解JavaMail API的使用,配置SMTP服务器信息,以及在Java代码中正确设置邮件的各个属性。这样,当服务器出现问题时,运维人员可以第一时间收到通知,从而...

    关于用javamail发送邮件时,由于邮件服务器要SSL,解决办法

    在尝试使用JavaMail发送邮件时,如果邮件服务器要求使用SSL(Secure Socket Layer)或TLS(Transport Layer Security)协议来确保通信安全,开发者可能会遇到一些挑战。本文将深入探讨如何解决这一问题,主要基于...

    javaMail发送邮件 发送成功 收不到邮件 或收到邮件无主题无收件人乱码

    ### JavaMail发送邮件时遇到的问题及解决方法 在使用JavaMail进行邮件发送的过程中,可能会遇到以下几种常见问题:发送成功但收件方未收到邮件、邮件收到后无主题或无收件人信息以及邮件内容出现乱码等情况。本文将...

    javamail发送邮件 主题乱码解决

    第90行,setSubject("")

    JavaMail发送邮件的例子

    在Struts2框架中集成JavaMail,你需要在Action类中编写发送邮件的方法,并在需要发送邮件的事件中调用。Struts2的配置文件中可以定义一个Action,该Action与发送邮件的方法关联。例如,你可以创建一个名为`...

    javamail发送邮件.zip

    JavaMail 是一个强大的开源库,用于在Java应用程序中发送和接收电子邮件。这个“javamail发送邮件.zip”压缩包显然包含了一个示例项目,演示如何使用JavaMail API发送包含正文文本、图片以及附件的邮件。以下是对这...

    javamail实现邮箱与邮箱发送邮件

    JavaMail 是一个强大的开源库,用于在Java应用程序中处理电子邮件。它提供了丰富的API,使得开发者可以轻松地实现发送、接收和处理电子邮件的功能。本示例将重点介绍如何使用JavaMail库来实现163邮箱向腾讯邮件发送...

    javamail 回执邮件资料

    JavaMail 是一个开源的 Java 库,用于处理电子邮件的发送和接收。它提供了与 SMTP、POP3 和 IMAP 协议交互的接口,是开发基于 Java 的电子邮件应用的基础。回执邮件是邮件服务中的一项功能,它允许发件人在发送邮件...

    关于javaMail的资料关于javaMail的资料

    1. **IMAP(Internet Message Access Protocol)**:允许用户从服务器检索邮件,同时保持邮件在服务器上,便于多设备同步。 2. **POP3(Post Office Protocol version 3)**:用户下载邮件后,通常会从服务器删除,...

    javaMail实现文件接收与发送

    JavaMail 是一个强大的开源库,专门用于在Java应用程序中处理电子邮件的发送和接收。它提供了对标准SMTP(简单邮件传输协议)、POP3(邮局协议)和IMAP(因特网消息访问协议)的支持,使得开发者能够方便地构建邮件...

    JavaMail配置SSL服务器及安装证书

    JavaMail是一种广泛使用的Java库,用于在应用程序中发送和接收电子邮件。配置JavaMail与SSL(Secure Socket Layer)服务器配合使用,是为了确保邮件通信的安全性,防止数据在传输过程中被窃取或篡改。SSL提供了加密...

    james和javamail实现邮件收发(带发送附件)

    在这个例子中,我们将深入探讨如何利用James服务器和JavaMail API来实现这一目标,同时处理中文内容和附件。 首先,James(Apache James)是一个开源的邮件服务器,它支持SMTP、POP3和IMAP协议,可以作为企业级的...

    邮件发送系统主体源程序.rar_javamail_邮件系统 linux

    这个压缩包文件"邮件发送系统主体源程序.rar"包含了一个使用JavaMail实现的邮件发送系统的主体源代码,可以帮助开发者理解如何在Linux环境中构建这样的系统。让我们深入探讨JavaMail在邮件系统中的应用以及在Linux...

    JavaMail(JAVA邮件服务器)API详解 chm.rar

    除此之外,可能还会讨论更高级的主题,如使用JavaMail处理邮件模板、发送HTML邮件、处理邮件队列、以及如何在多线程环境中使用JavaMail。开发者还可能会学习到如何处理邮件头信息、邮件过滤、邮件搜索等功能。 总之...

    常规JavaMail 邮件发送实用类

    在Java编程领域,JavaMail API是一个非常重要的工具,它允许开发者通过编程方式发送电子邮件。"常规JavaMail 邮件发送实用类"标题所指的,通常是一个自定义的Java类,封装了JavaMail API的基本操作,使得邮件发送变...

    JAVAMail邮箱服务器搭建步骤详解

    本文将详细介绍如何在Linux环境下搭建JavaMail邮箱服务器Apache James。 **准备工作** 1. **硬件需求**:首先,你需要一台运行Linux操作系统的服务器,这可以是本地的虚拟机,也可以是云服务器。如果你的服务器仅...

    JavaMail邮件发送源码 非常简单

    JavaMail是一种在Java应用程序中发送和接收电子邮件的标准API,它为开发者提供了强大的功能,使得处理邮件变得简单而高效。在JavaMail中,我们主要利用 javax.mail 和 javax.mail.internet 这两个包中的类来实现邮件...

    javamail发送邮件实例

    关于文本编辑器KindEditor,它是一个流行的JavaScript富文本编辑器,常用于网页上创建和编辑多格式内容。在JavaMail中,你可能需要将用户在KindEditor中编辑的内容转换成HTML字符串,然后通过上述步骤中的`...

    JavaMail(3)——发送带附件的邮件.docx

    JavaMail 是一个强大的开源库,用于在Java应用程序中发送和接收电子邮件。在JavaMail中,发送带有附件的邮件涉及到对MIME(Multipurpose Internet Mail Extensions)标准的理解和使用。MIME扩展了邮件协议,允许在...

    JavaMail实现邮件发送功能,可发送、抄送、密送多人,支持多附件的发送

    本篇将详细介绍如何利用 JavaMail 实现邮件发送,包括发送、抄送、密送多人以及添加多附件。 首先,你需要在项目中引入 JavaMail 的依赖。如果是 Maven 项目,可以在 `pom.xml` 文件中添加如下依赖: ```xml ...

Global site tag (gtag.js) - Google Analytics