public void SendMessage(String msghtm) {
String to = "name@21cn.com";
String from = "name@21cn.com";
String subject = "testhtml你好";
String mailhost = "smtp.21cn.com";
String content="<html><head> 你好 !</head><body><a href='http://www.sina.com'>content</a><br>contentcontentcontentcontent</body></html>";
MimeMessage mimeMsg = null;
Session session = null;
String fileAttachment = "C:\\mm.jpg";
try {
Properties props = System.getProperties(); //获得系统属性
props.put("mail.smtp.host", mailhost); //设置SMTP主机
props.put("mail.transpont.protocol","smtp");
props.put("mail.smtp.auth","true");
session = Session.getInstance(props,new PassAuth("name","pass"));
mimeMsg = new MimeMessage( session );
mimeMsg.setFrom(new InternetAddress( from ) );
if(to!=null){
mimeMsg.setRecipients( Message.RecipientType.TO, InternetAddress.parse( to ) );
}
mimeMsg.setSubject(subject,"GB2312");
// 第一部分信息
MimeBodyPart mbp1 = new MimeBodyPart();
mbp1.setText( content, "GB2312");
// 第二部分信息
MimeBodyPart mbp2 = new MimeBodyPart();
FileDataSource fds = new FileDataSource( fileAttachment );
mbp2.setDataHandler(new DataHandler(fds));
mbp2.setFileName(fds.getName());
mbp2.setHeader("Content-ID","image1");
// 在第三部分信息中附加一个文件
StringBuffer msg=new StringBuffer();
String line="";
FileReader fr=new FileReader("c:\\test.htm");
BufferedReader br=new BufferedReader(fr);
while((line=br.readLine())!=null){
msg.append(line);
}
BodyPart mbp3=new MimeBodyPart();
mbp3.setContent(msg.toString(),"text/html;charset=gb2312");
// 创建 Multipart 并放入每个 MimeBodyPart
Multipart mp = new MimeMultipart("related");
mp.addBodyPart( mbp1 );
mp.addBodyPart( mbp2 );
mp.addBodyPart( mbp3);
mimeMsg.setContent(mp);
//mimeMsg.setContent(msghtm,"text/html;charset=gb2312");
mimeMsg.setDisposition("Inline");
mimeMsg.setSentDate(new Date());
Transport.send( mimeMsg );
System.out.println("email send!");
} catch (MessagingException e) {
e.printStackTrace();
} catch (Exception e) {
e.printStackTrace();
}
}
分享到:
相关推荐
在这个例子中,我们将详细探讨如何使用JavaMail发送邮件,包括SMTP认证、添加附件以及发送HTML内容的邮件。 首先,为了使用JavaMail API,我们需要引入相应的库。在这个例子中,`javamail`和`JAF`(JavaBeans ...
下面是一个简化的JavaMail发送邮件的过程: 1. **配置邮件会话**:首先,我们需要创建一个`Properties`对象,并设置SMTP服务器的相关参数,如主机名和端口号。然后,通过`Session.getInstance()`方法初始化一个邮件...
本资源是一个集合发送图片,附件,内容,HTML等得JAVAMAIL代码,并且可以同时发送多个附件多个图片,只需填充VO类,即可直接调用并发送邮件,例子已经写好,只要填充上必要值即可,经163,qq,sina测试没有问题,有...
本资源是一个集合发送图片,附件,内容,HTML等得JAVAMAIL代码,并且可以同时发送多个附件多个图片,只需填充VO类,即可直接调用并发送邮件,例子已经写好,只要填充上必要值即可,经163,qq,sina测试没有问题,有...
8. **使用JavaMail发送HTML邮件**:通过设置`MimeMessage`的`setContent()`方法,可以发送包含HTML的邮件。 ```java message.setContent("<h1>HTML邮件标题</h1><p>这是HTML邮件正文。</p>", "text/html;charset=...
message.setSubject("JavaMail发送邮件示例"); message.setText("这是邮件的正文内容"); ``` 为了添加附件,我们需要使用`Multipart`对象。`MimeBodyPart`用于存储附件内容,而`MimeMultipart`用于组合多个`...
在提供的压缩包文件"javamail实例"中,可能包含了上述代码的完整实现以及其他相关的示例,这些示例可以帮助你更好地理解和使用JavaMail API,比如添加附件、设置HTML格式的邮件内容等。通过深入研究和实践这些示例,...
3. **MIME消息**: JavaMail中的MIMEMessage类用于构建邮件内容,包括文本、HTML、图片和附件。MIME是一种标准,允许邮件包含多种类型的数据。对于多附件的邮件,可以使用MIMEBodyPart对象创建每个附件,并将它们添加...
以下是一个简单的JavaMail发送邮件的示例代码: ```java import javax.mail.*; import javax.mail.internet.*; public class JavaMailTest { public static void main(String[] args) { String to = "recipient@...
Java/javamail发送邮件是Java开发中常见的任务之一,它涉及到网络通信和电子邮件协议的知识。在Java中,JavaMail API提供了发送和接收电子邮件的功能。这个API遵循了JavaBeans Activation Framework (JAF) 和 ...
【JavaMail发送邮件】 JavaMail 是一个开源的Java库,用于处理电子邮件的发送、接收和其他相关操作。在Java中,我们可以使用JavaMail API来构建发送邮件的功能。以下是从提供的文件内容中提取的关键知识点: 1. **...
这个例子展示了如何使用JavaMail发送带附件的邮件。需要注意的是,实际应用中应处理各种异常,确保邮件发送的健壮性。此外,如果你的邮件服务器需要身份验证,还需要提供一个Authenticator来处理登录信息。 总的来...
这个示例将详细介绍如何在Java应用程序中使用JavaMail发送邮件。 首先,我们需要引入JavaMail相关的依赖。如果你使用的是Maven项目,可以在pom.xml文件中添加以下依赖: ```xml <groupId>com.sun.mail</groupId> ...
JavaMail是Java编程语言中用于处理电子邮件的API,它提供了丰富的功能,包括发送、接收邮件以及处理复杂的邮件格式,如文本、图片和附件。在这个小例子中,我们将深入探讨如何利用JavaMail API来实现这些功能。 ...
总结起来,Spring结合JavaMail API发送邮件的过程主要包括:配置`JavaMailSender` bean,创建邮件消息对象,设置邮件内容和属性,最后通过`JavaMailSender`实例发送邮件。通过这种方式,开发者可以轻松地在Spring...
以下是使用JavaMail发送邮件的基本代码示例(简化版): ```java import javax.mail.*; import javax.mail.internet.*; public class EmailSender { public static void main(String[] args) { String from = ...
4. **MimeMessage**:`Message`的子类,支持多部分消息,可以包含文本、图片、附件等复杂格式的内容。使用`MimeMessage`,你可以构造更复杂的邮件结构,例如HTML邮件或者包含多个附件的邮件。 5. **InternetAddress...
`SendEmail.java`类是邮件发送的测试类,它使用`ReadPropertity`类获取配置文件中的属性值,然后实例化`EmailHandle`对象并调用相应的方法发送邮件。 要实现邮件发送功能,你需要在项目中引入相应的JavaMail库,如`...
2. **Message**: 表示一封邮件,包含了邮件的所有内容,包括发件人、收件人、主题和正文。你可以使用 `MimeMessage` 类来创建和操作复杂的 MIME 邮件,支持附件、HTML 内容等。 3. **Transport**: 负责将 `Message`...
以下是一段基本的JavaMail发送邮件的示例代码: ```java Properties props = new Properties(); props.put("mail.smtp.host", "smtp.example.com"); props.put("mail.smtp.port", "587"); props.put("mail.smtp....