使用发送邮箱所需要2个jar包 activation.jar mail.jar
先要激活qq邮箱的pop3/smtp服务 ,账户里面有个开启服务的设置 ,开启成功有个授权码用于java代码登陆邮箱的
需要修改email类前三行,定义自己的qq账号,密码和邮件服务器,在test类中填写信息即可直接使用,下面附几张测试截图
代码详情---Email实体类
发送邮箱信息的类
package ljm.demo;
import java.util.Iterator;
import java.util.LinkedList;
import java.util.List;
import java.util.Properties;
import javax.activation.DataHandler;
import javax.activation.FileDataSource;
import javax.mail.Authenticator;
import javax.mail.BodyPart;
import javax.mail.Message;
import javax.mail.Multipart;
import javax.mail.Session;
import javax.mail.Transport;
import javax.mail.internet.InternetAddress;
import javax.mail.internet.MimeBodyPart;
import javax.mail.internet.MimeMessage;
import javax.mail.internet.MimeMultipart;
import javax.mail.internet.MimeUtility;
import javax.mail.*;
import javax.mail.internet.*;
import javax.activation.*;
public class Email {
private static String defaultSenderName = "";// 默认的发件人用户名,defaultEntity用得到
private static String defaultSenderPass = "";// 默认的发件人密码,defaultEntity用得到
private static String defaultSmtpHost = "";// 默认的邮件服务器地址,defaultEntity用得到
private String smtpHost; // 邮件服务器地址
private String sendUserName; // 发件人的用户名
private String sendUserPass; // 发件人密码
private MimeMessage mimeMsg; // 邮件对象
private Session session;
private Properties props;
private Multipart mp;// 附件添加的组件
private List<FileDataSource> files = new LinkedList<FileDataSource>();// 存放附件文件
private void init() {
if (props == null) {
props = System.getProperties();
}
props.put("mail.transport.protocol", "smtp");// 连接协议
props.put("mail.smtp.host", smtpHost);