用java发邮件是一个十分简单的事情,javax.email包就是用来发电子邮件的,但是今天我介绍的方式更加简单。
首先你需要导入两个JAR包mail.jar和commons-email-1.5.jar,这两个jar包在 网上一搜就有。
package mailDemo;
import org.apache.commons.mail.DefaultAuthenticator;
import org.apache.commons.mail.Email;
import org.apache.commons.mail.SimpleEmail;
import org.apache.commons.mail.Email;
import org.apache.commons.mail.SimpleEmail;
public class sendMail {
public static void sendM()throws Exception{
Email email = new SimpleEmail();
email.setHostName("smtp.qq.com");//设置邮箱服务器,我这用的是qq的
email.setSmtpPort(465);//设置邮箱服务器端口号
email.setAuthenticator(new DefaultAuthenticator("",""));//你的qq账号和授权码
public static void sendM()throws Exception{
Email email = new SimpleEmail();
email.setHostName("smtp.qq.com");//设置邮箱服务器,我这用的是qq的
email.setSmtpPort(465);//设置邮箱服务器端口号
email.setAuthenticator(new DefaultAuthenticator("",""));//你的qq账号和授权码
//登录你的qq邮箱,进入账号设置,获得SMTP授权,得到授权码
email.setSSLOnConnect(true);
email.setFrom("");//你的账号,邮件从这里发出去
email.setSubject("发个邮件试试看!");//邮件的标题
email.setMsg("我就想试试能不能发出去");//邮件的内容
email.addTo("");//发给谁
email.send();
}
public static void main(String[] args) {
try {
sendMail.sendM();
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
email.setSSLOnConnect(true);
email.setFrom("");//你的账号,邮件从这里发出去
email.setSubject("发个邮件试试看!");//邮件的标题
email.setMsg("我就想试试能不能发出去");//邮件的内容
email.addTo("");//发给谁
email.send();
}
public static void main(String[] args) {
try {
sendMail.sendM();
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
把上述代码拷贝到你的的项目中,导入用到的jar包,把空缺处填写完整就可以点击运行了。
下面附上用javax.email写的
public static boolean sendMail(String email, String emailMsg) {
String from = ""; // 邮件发送人的邮件地址
String to = email; // 邮件接收人的邮件地址
final String username = ""; //发件人的邮件帐户
final String password = ""; //发件人的邮件密码
String from = ""; // 邮件发送人的邮件地址
String to = email; // 邮件接收人的邮件地址
final String username = ""; //发件人的邮件帐户
final String password = ""; //发件人的邮件密码
//定义Properties对象,设置环境信息
Properties props = new Properties();
//设置邮件服务器的地址
props.setProperty("mail.transport.protocol", "smtp");//设置发送邮件使用的协议
props.setProperty("mail.smtp.host", "smtp.qq.com"); // 指定的smtp服务器
props.setProperty("mail.smtp.auth", "true");
//创建Session对象,session对象表示整个邮件的环境信息
Session session = Session.getInstance(props);
//设置输出调试信息
session.setDebug(true);
try {
//Message的实例对象表示一封电子邮件
MimeMessage message = new MimeMessage(session);
//设置发件人的地址
message.setFrom(new InternetAddress(from));
//设置主题
message.setSubject("用户激活");
//设置邮件的文本内容
//message.setText("Welcome to JavaMail World!");
message.setContent(emailMsg,"text/html;charset=utf-8");//
//从session的环境中获取发送邮件的对象
Transport transport=session.getTransport();
//连接邮件服务器
transport.connect("smtp.qq.com",25, username, password);
//设置收件人地址,并发送消息
transport.sendMessage(message,new Address[]{new InternetAddress(to)});
transport.close();
return true;
} catch (MessagingException e) {
e.printStackTrace();
return false;
}
}
props.setProperty("mail.transport.protocol", "smtp");//设置发送邮件使用的协议
props.setProperty("mail.smtp.host", "smtp.qq.com"); // 指定的smtp服务器
props.setProperty("mail.smtp.auth", "true");
//创建Session对象,session对象表示整个邮件的环境信息
Session session = Session.getInstance(props);
//设置输出调试信息
session.setDebug(true);
try {
//Message的实例对象表示一封电子邮件
MimeMessage message = new MimeMessage(session);
//设置发件人的地址
message.setFrom(new InternetAddress(from));
//设置主题
message.setSubject("用户激活");
//设置邮件的文本内容
//message.setText("Welcome to JavaMail World!");
message.setContent(emailMsg,"text/html;charset=utf-8");//
//从session的环境中获取发送邮件的对象
Transport transport=session.getTransport();
//连接邮件服务器
transport.connect("smtp.qq.com",25, username, password);
//设置收件人地址,并发送消息
transport.sendMessage(message,new Address[]{new InternetAddress(to)});
transport.close();
return true;
} catch (MessagingException e) {
e.printStackTrace();
return false;
}
}