使用Oracle官方的JavaMail进行实现,JavaMail下载地址:https://java.net/projects/javamail/pages/Home 将下载好的jar包添加到工程路径中就OK了,我使用的是最新的1.5.2版本的javax.mail.jar。
关于邮件协议可参考:什么是POP3、SMTP和IMAP? 下面的示例中是通过我的新浪邮箱(theonegis@sina.cn)给QQ邮箱(123456789@qq.com不知道是谁的邮箱)发邮件,下面给出实现代码:
import java.util.Date; import java.util.Properties; import javax.mail.Message; import javax.mail.MessagingException; import javax.mail.Session; import javax.mail.Transport; import javax.mail.internet.MimeMessage; public class SimpleMail { public static void main(String[] args) { Properties props = new Properties(); //这里使用smtp协议发送邮件,我的新浪邮箱是.cn的不是.com的,所以smtp服务器为smtp.sina.cn props.put("mail.smtp.host", "smtp.sina.cn"); Session session = Session.getInstance(props, null); try { MimeMessage msg = new MimeMessage(session); //设置发件人邮箱 msg.setFrom("theonegis@sina.cn"); //设置收件人邮箱 msg.setRecipients(Message.RecipientType.TO, "123456789@qq.com"); //设置主题 msg.setSubject("This is a test"); //设置日期 msg.setSentDate(new Date()); //设置正文内容 msg.setText("How are you?\nThis is a test, please do not reply!"); //发送邮件,参数为邮件信息,发件人邮箱和发件人邮箱密码 Transport.send(msg, "theonegis@sina.cn", "这里是发件人的密码"); } catch (MessagingException mex) { System.err.println("Send failed! Exception: " + mex); } } }
JavaMail中比较重要的的类是Session、Store和Folder。
本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。
我来说两句