使用前下载mail.jar
package com.CloudDisk.Extend;
import java.security.GeneralSecurityException;
import java.util.Properties;
import javax.mail.Message;
import javax.mail.MessagingException;
import javax.mail.NoSuchProviderException;
import javax.mail.Session;
import javax.mail.Transport;
import javax.mail.internet.InternetAddress;
import javax.mail.internet.MimeMessage;
import com.sun.mail.util.MailSSLSocketFactory;
public class MailExtend {
/**
* @param args
* @throws Exception
*/
public void mail(String id,String mail,String yanzhenma) throws Exception {
/*Session session = HibernateSessionFactory.getSession();
List<District> dList = session.createQuery("from District").list();
Set sList = dList.get(0).getStreets();
System.out.println(sList.size());*/
/*DistrictDao dao =new DistrictDao();*/
//List<House> hlist = dao.getAllH();
/*District d = dao.getDistrictOne(Short.valueOf((short) 3));
Set s =d.getStreets();
List<Street> slist = new ArrayList<Street>();
for (Object o : s) {
slist.add((Street) o);
}
System.out.println(slist.get(0).getName());*/
/*Session session = HibernateSessionFactory.getSession();
Criteria c = session.createCriteria(Street.class);
c.add(Restrictions.eq("district.id",Short.valueOf("1")));
//System.out.println(c.list());
List<Street> slist = c.list();
System.out.println(slist.size());
String[] str = new String[8];
for (int i = 0; i < slist.size(); i++) {
str[i] = slist.get(i).getName();
}
List<NameBean> arrList = new ArrayList<NameBean>();
for (String s : str) {
NameBean bean = new NameBean();
bean.setName(s);
arrList.add(bean);
}
MyComparator compare = new MyComparator();
Collections.sort(arrList, compare);
for (NameBean b : arrList) {
System.out.println(b.getNameFirstChar() + ";" + b.getName());
} */
/*Mail mail = new Mail();
mail.setHost("smtp.163.com"); // 设置邮件服务�?如果不用163�?自己找找看相关的
mail.setSender("15705691643@163.com");
mail.setReceiver("15705691643@163.com"); // 接收�?
mail.setUsername("15705691643@163.com"); // 登录账号,�?��都是和邮箱名�?���?
mail.setPassword("zhuangyou971124"); // 发件人邮箱的登录密码
mail.setSubject("aaaaaaaaa");
mail.setMessage("bbbbbbbbbbbbbbbbb");
new MailUtil().send(mail); */
Properties prop = new Properties();
// �?��debug调试,以便在控制台查�?
prop.setProperty("mail.debug", "true");
// 设置邮件服务器主机名
prop.setProperty("mail.host", "smtp.qq.com");
// 发�?服务器需要身份验�?
prop.setProperty("mail.smtp.auth", "true");
// 发�?邮件协议名称
prop.setProperty("mail.transport.protocol", "smtp");
// �?��SSL加密,否则会失败
MailSSLSocketFactory sf = new MailSSLSocketFactory();
sf.setTrustAllHosts(true);
prop.put("mail.smtp.ssl.enable", "true");
prop.put("mail.smtp.ssl.socketFactory", sf);
// 创建session
Session session = Session.getInstance(prop);
// 通过session得到transport对象
Transport ts = session.getTransport();
// 连接邮件服务器:邮箱类型,帐号,授权码代替密码(更安全)
ts.connect("smtp.qq.com","chengeng.mail@qq.com", "bwslqgdgkgijbgda");//后面的字符是授权码,用qq密码反正我是失败了(用自己的,别用我的,这个号是我瞎编的,为了�?。�?。)
// 创建邮件
Message message = createSimpleMail(session,id,yanzhenma,mail);
// 发�?邮件
ts.sendMessage(message, message.getAllRecipients());
ts.close();
}
/**
* @Method: createSimpleMail
* @Description: 创建�?��只包含文本的邮件
*/
public static MimeMessage createSimpleMail(Session session,String id,String yanzhenma,String mail)
throws Exception {
// 创建邮件对象
MimeMessage message = new MimeMessage(session);
// 指明邮件的发件人
message.setFrom(new InternetAddress("chengeng.mail@qq.com"));
// 指明邮件的收件人,现在发件人和收件人是一样的,那就是自己给自己发
message.setRecipient(Message.RecipientType.TO, new InternetAddress(mail));
// 邮件的标�?
message.setSubject("nicai ");
// 邮件的文本内�?
message.setContent("尊敬的用�?:"+id+"<br/>验证码!"+yanzhenma+"(请勿轻易告诉他人)", "text/html;charset=UTF-8");
// 返回创建好的邮件对象
return message;
}
}