Java邮件发送的简单实现

java邮件发送:利用现有的邮件账户发送邮件,比如说,我在网易注册一个邮箱账户,通过JAVA操控,我可以不亲自登录网易邮箱,让程序自动的使用网易邮箱发送邮件。这一机制被广泛的用在注册激活和垃圾邮件的发送等方面。

实现:
1.JavaMail
可以到http://www.oracle.com/technetwork/java/javamail/index-138643.html进行下载,并将mail.jar添加到classpath即可。但是其操作过程十分繁琐,笔者搞了好长时间才还没弄好.

2.Apache Commons Email

简介:
Commons Email封装了javamail,使用非常简单。
功能:简单文本邮件、带附件的邮件、HTML格式的邮件
官方首页:http://commons.apache.org/email/
官方示例:http://commons.apache.org/email/userguide.html

使用前需引入3个jar文件:commons-email-1.1.jar、javamail.jar、activation.jar
或者使用maven在pom.xml加入:

        <dependency>
           <groupId>javax.mail</groupId>
            <artifactId>mail</artifactId>
            <version>1.4.1</version>
        </dependency>

        <dependency>
            <groupId>org.apache.commons</groupId>
            <artifactId>commons-email</artifactId>
            <version>1.3.2</version>
        </dependency>

示例:

Email email = new Email();
email.setHostName("smtp.qq.com");
email.setSmtpPort(465);
email.setAuthentication("1776898728@qq.com","mraaxppugeeyhheb");//邮件服务器验证:用户名/密码
email.setSSLOnConnect(true);
email.setCharset("UTF-8");// 必须放在前面,否则乱码
try {
     email.setFrom("1776898728@qq.com", "1776898728");
     email.setSubject("subject中文");
     email.setMsg("msg中文");
     email.addTo("1234567@qq.com");
     email.send();
 } catch (EmailException e) {
     e.printStackTrace();
 }

说明:
1.email.setAuthentication(“1776898728@qq.com”,”mraaxppugeeyhheb”);这里的密码是授权密码!!!
在邮箱的设置->账户栏里先开启stmp服务,在设置密码
这里写图片描述

2.哪出错了就找官网!!!!笔者之前看的博客,一直错,到官网一查,一目了然=_=

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值