学会QQ邮箱的使用(对于其他的使用类似的你应该也会更改了) 首先把QQ邮箱的POP3 SMTP打开 首先确定你的网络正常、非代理 【确定你的QQ邮箱开启了SMTP】
另外,发送邮件还需要一个mail.jar包,可从网上下载,也可查看本人上传的资源,自行下载,不要积分哦! 这个是链接:点击进入下载页
import java.util.Properties; import javax.mail.Message; import javax.mail.MessagingException; import javax.mail.Session; import javax.mail.Transport; import javax.mail.internet.AddressException; import javax.mail.internet.InternetAddress; import javax.mail.internet.MimeMessage; /** * 发送邮件 */ public class JavaMail { // 设置服务器 private static String KEY_SMTP = "mail.smtp.host"; private static String VALUE_SMTP = "smtp.exmail.qq.com"; // 服务器验证 private static String KEY_PROPS = "mail.smtp.auth"; private static boolean VALUE_PROPS = true; // 发件人用户名、密码 private String SEND_USER = "这里写上发送邮件的邮箱";//就是你自己的邮箱 private String SEND_UNAME = "邮箱"; //这里同上,也是你自己的邮箱 private String SEND_PWD = "这里写上发送邮件的邮箱的密码"; //你自己的密码 // 建立会话 private MimeMessage message; private Session s; /* * 初始化方法 */ public JavaMail() { Properties props = System.getProperties(); props.setProperty(KEY_SMTP, VALUE_SMTP); props.put(KEY_PROPS, VALUE_PROPS); s = Session.getInstance(props); //s.setDebug(true);//开启后有调试信息,可以开启看看。 message = new MimeMessage(s); } /** * 发送邮件 * * @param headName * 邮件头文件名 * @param sendHtml * 邮件内容 * @param receiveUser * 收件人地址 */ public void doSendHtmlEmail(String headName, String sendHtml, String receiveUser) { try { // 发件人 InternetAddress from = new InternetAddress(SEND_USER); message.setFrom(from); // 收件人 InternetAddress to = new InternetAddress(receiveUser); message.setRecipient(Message.RecipientType.TO, to); // 邮件标题 message.setSubject(headName); String content = sendHtml.toString(); // 邮件内容,也可以使纯文本"text/plain" message.setContent(content, "text/html;charset=GBK"); message.saveChanges(); Transport transport = s.getTransport("smtp"); // smtp验证,就是你用来发邮件的邮箱用户名密码,在上面写过了。 transport.connect(VALUE_SMTP, SEND_UNAME, SEND_PWD); // 发送 transport.sendMessage(message, message.getAllRecipients()); transport.close(); System.out.println("send success!"); } catch (AddressException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (MessagingException e) { e.printStackTrace(); } } }
下面是测试类
public class CeShi { public static void main(String[] args) { JavaMail se = new JavaMail(); String htmlText = "<h1>Hello</h1>" + "<a href=\"http://www.hehe.com\" target=\"blank\">点击连接</a>"; se.doSendHtmlEmail("发送了一个链接!",htmlText ,"这里写上收件人的邮箱"); } }