直接用javamail发送

import javax.mail.internet.InternetAddress;
import javax.mail.internet.MimeMessage;
import javax.mail.internet.MimeUtility;
import javax.mail.Session;
import javax.mail.MessagingException;
import javax.mail.Transport;

public class SendHtmlMail {
public void sendmail(){  
          
        //创建邮件发送类 JavaMailSender  
        //用于发送基本的文本邮件信息(不能包括附件,及图片)  
        JavaMailSender sender = new JavaMailSenderImpl();   
          
          
        //设置邮件服务主机  
        ((JavaMailSenderImpl)sender).setHost("smtp.sohu.com");  
        //发送者邮箱的用户名  
        ((JavaMailSenderImpl)sender).setUsername("userName");  
        //发送者邮箱的密码  
        ((JavaMailSenderImpl)sender).setPassword("password");  
          
        //配置文件,用于实例化java.mail.session  
        Properties pro = System.getProperties();  
          
        //登录SMTP服务器,需要获得授权,网易163邮箱新近注册的邮箱均不能授权。  
        //测试 sohu 的邮箱可以获得授权  
        pro.put("mail.smtp.auth", "true");  
        pro.put("mail.smtp.socketFactory.port", "25");  
        pro.put("mail.smtp.socketFactory.fallback", "false");  
          
        //通过文件获取信息  
        ((JavaMailSenderImpl)sender).setJavaMailProperties(pro);  
          
          
        //创建基本邮件信息  
        MailMessage mailMessage = new SimpleMailMessage();  
          
        //发送者地址,必须填写正确的邮件格式,否者会发送失败  
        mailMessage.setFrom("******@sohu.com");  
        //邮件主题  
        mailMessage.setSubject("测试邮件");  
        //邮件内容,简单的邮件信息只能添加文本信息  
        mailMessage.setText("测试");  
        //邮件接收者的邮箱地址  
        mailMessage.setTo("******@qq.com");  
          
          
        //发送邮件,参数可以是数组  
        //sender.send(SimpleMailMessage[])  
        sender.send((SimpleMailMessage)mailMessage);  
          
    }  
}

=============================================================================

public void sendMimeMail() throws MessagingException{

//创建邮件发送类 JavaMailSender
//用于发送多元化邮件,包括附件,图片,html 等
JavaMailSender mimeMailSender = new JavaMailSenderImpl();

//设置邮件服务主机
((JavaMailSenderImpl)mimeMailSender).setHost("smtp.sohu.com");
//发送者邮箱的用户名
((JavaMailSenderImpl)mimeMailSender).setUsername("userName");
//发送者邮箱的密码
((JavaMailSenderImpl)mimeMailSender).setPassword("password");

//配置文件,用于实例化java.mail.session
Properties pro = System.getProperties();

//登录SMTP服务器,需要获得授权,网易163邮箱新近注册的邮箱均不能授权。
//测试 sohu 的邮箱可以获得授权
pro.put("mail.smtp.auth", "true");
pro.put("mail.smtp.socketFactory.port", "25");
pro.put("mail.smtp.socketFactory.fallback", "false");

((JavaMailSenderImpl)mimeMailSender).setJavaMailProperties(pro);

//创建多元化邮件
MimeMessage mimeMessage = ((JavaMailSenderImpl)mimeMailSender).createMimeMessage();

//创建 mimeMessage 帮助类,用于封装信息至 mimeMessage
MimeMessageHelper helper = new MimeMessageHelper(mimeMessage, true, "GBK");

//基本信息

//发送者地址,必须填写正确的邮件格式,否者会发送失败
helper.setFrom("*******@sohu.com");
//邮件主题
helper.setSubject("测试邮件");
//邮件内容,简单的邮件信息只能添加文本信息
helper.setText("测试");
//邮件接收者的邮箱地址
helper.setTo("******@qq.com");

//多元化信息

//添加HTML 信息
File myPicture = new File("C:\\Documents and Settings\\Administrator\\桌面\\kz2.jpg");

//如果是html代码,boolean 的参数用该为true
helper.setText("<html><head><meta http-equiv="+"Content-Type"+" content="+"text/html; charset=gb2312"+"></head><body><h1>新书快递通知</h1>你的新书快递申请已推送新书,请到<a href=‘‘>空间"
+ "</a>中查看<br><img src=‘cid:myPicture‘></body></html>", true);

//添加图片至HTML 代码中
helper.addInline("myPicture", myPicture);

//添加附件
File file = new File("C:\\Documents and Settings\\Administrator\\桌面\\validate.jar");
helper.addAttachment("picture", myPicture);
helper.addAttachment("picture", file);

((JavaMailSender)mimeMailSender).send(mimeMessage);

System.out.println("发送成功");
}

时间: 2024-10-11 17:23:31

直接用javamail发送的相关文章

JavaMail(二):利用JavaMail发送复杂邮件

上一篇文章我们学习了利用JavaMail发送简单邮件,这篇文章我们利用JavaMail发送稍微复杂一点的邮件(包含文本.图片.附件).这里只贴出核心代码,其余代码可参考JavaMail(一):利用JavaMail发送简单邮件 封装发送邮件代码 /** * 封装发送邮件代码 * @author fly * @时间 2017-05-09 * */ public class Email { /** * 创建并发送一封包含文本.图片.附件的复杂邮件 * @throws Exception */ publ

【Mail】JavaMail发送带附件的邮件

上一篇讲了使用JavaMail发送普通邮件([Mail]JavaMail介绍及发送邮件(一)),本例讲发送复杂的邮件(带有附件的邮件) 生成一封复杂的邮件 新建一个JavaWeb的Maven工程,引入javamail.jar包,maven引用如下: 1 <!-- javamail --> 2 <dependency> 3 <groupId>javax.mail</groupId> 4 <artifactId>mail</artifactId

HDU 5908 Abelian Period 可以直接用multiset

http://acm.hdu.edu.cn/showproblem.php?pid=5908 要求把数组分成k组使得每组中的元素出现次数相同 就是分成k个集合,那么直接用multiset判定就可以 有重载相等运算符的 我被坑了的就是, 对于2个元素一个集合的可以,那么,4,6,8这样分集合也是可以的. 这个很容易理解 但是,你也要能平均分才行啊 就是10的2可以,但是4是一定不可以得.不能平均分 #include <cstdio> #include <cstdlib> #inclu

每日学习笔记----js中可以直接用id名调用的问题?

在JavaScript中,标准的id选择器调用语法是: document.getElementById('myid').style.width = pc + "%"; 但是,今天发现,直接用id名字调用竟然也可以正确运行: myid.style.width = pc+"%"; 最后找度娘问了问. 看到Mrcxt的博客里面有这个问题,问题的答案是: 这个最初是 IE 里面的,后来 firefox chrome 好像也支持了. 不建议使用,这个不是标准里面的,将来不一定

configParse 模块直接用

#!/bin/env python #-*- coding:utf-8 -*- from ConfigParser import ConfigParser import json def getConfigObject(filename):     """获得配置文件对象     """     _config_ = ConfigParser()     _config_.read(filename)     return _config_ de

[Java] JavaMail 发送带图片的 html 格式的邮件

JavaMail 发送的邮件正文和附件是相互独立的,但是内置图片需要定位图片在正文中的位置,所以内置图片和邮件正文是互相依赖的. 发送带附件的邮件可参考JavaMail 发送 html 格式.带附件的邮件. 发送纯文本的邮件可参照 JavaMail 简单案例. 具体例子 EmailHelper, Email 的帮助类,向帮助类提供 SMTP 服务器域名.用户名.密码.发送人邮箱.收件人邮箱.邮件主题.html 格式的内容.图片的路径,便可发送一份内置图片的邮件.在创建 MimeMultipart

为什么是List_list_=_new_ArrayList()_而不直接用ArrayList

为什么是List list = new ArrayList(),而不直接用ArrayList? 编程是要面向对象编程,针对抽象(接口),而非具体.List 是接口,ArrayList是实现. 实现List接口的有ArrayList.LinkedList.Vector等,所以用哪个就直接new 一个接口实现 这是一种很好的设计模式.一个接口有多种实现,这种写法是java面向对象的一种思想,依赖倒置原则,即依赖于抽象不依赖于实现(具体). 给调用者提供的应该是接口或者抽象类,而实现者可以实现或者继承

配置Nginx防止直接用IP访问Web服务器

看了很多Nginx的配置,好像都忽略了ip直接访问Web的问题,这样理论上不利于SEO优化,所以我们希望可以避免直接用IP访问网站,而是域名访问,具体怎么做呢,看下面. 官方文档中提供的方法: If you do not want to process requests with undefined "Host" header lines, you may define a default server that just drops the requests: server { li

如何在扫描完二维码后, 直接用Facebook App进到粉丝专页而不是网页版

假设我们推广了一枚二维码, 用户扫面二维码就用通过手机浏览器进入点专页,而不是facebook app, 是不是觉得很麻烦呢? 有没有办法解决呢?答案当然是有的! 一.取得Facebook粉丝专页id 代码 首先我们必须取得Facebook id 代码才能完成后面的动作,一般来说如果你的粉丝专页还没有取短网址的话, 你可以直接在网址列中就可以找到你的Facebook粉丝专页的id(如图红框所示) 但如果你已经取了短网址, 那你必须在网址列输入http://graph.facebook.com/{