package mail;
import javax.mail.*;
import javax.mail.internet.*;
import java.util.*;
import net.sf.json.JSONArray;
import net.sf.json.JSONObject;
public class SendFlexMail {
private static final String SMTP_HOST_NAME = "smtp.163.com";
private static final String SMTP_AUTH_USER = "feixianyuexin";
private static final String SMTP_AUTH_PWD = "fuckyourpassword";
// Add List of Email address to who email needs to be sent to
private String[] emailList;
public String sendFlexMail(String flexMail){
String result="";
JSONArray flexJavaMail = JSONArray.fromObject(flexMail);
emailList = new String[2];
JSONObject mailJsonObj = JSONObject.fromObject(flexJavaMail.getString(0));
emailList[0] = mailJsonObj.getString("senderEmail");//send mail to yourself
emailList[1] = mailJsonObj.getString("sendToEmail");
String senderName = mailJsonObj.getString("senderName");
String sendToName = mailJsonObj.getString("sendToName");
String senderMail = mailJsonObj.getString("senderEmail");
String emailMessage = mailJsonObj.getString("emailMessage");
String emailTopic = sendToName+":A Letter From Your Friend "+senderName;
try{
postMail(emailList,emailTopic, emailMessage,senderMail);
result="Congratulations!";
}catch (MessagingException e){
e.printStackTrace();
}
return result;
}
public void postMail( String recipients[ ], String subject,
String message , String from) throws MessagingException
{
boolean debug = false;
//Set the host smtp address
Properties props = new Properties();
props.put("mail.smtp.host", SMTP_HOST_NAME);
props.put("mail.smtp.auth", "true");
Authenticator auth = new SMTPAuthenticator();
Session session = Session.getDefaultInstance(props, auth);
session.setDebug(debug);
// create a message
Message msg = new MimeMessage(session);
// set the from and to address
InternetAddress addressFrom = new InternetAddress(from);
msg.setFrom(addressFrom);
InternetAddress[] addressTo = new InternetAddress[recipients.length];
for (int i = 0; i < recipients.length; i++)
{
addressTo[i] = new InternetAddress(recipients[i]);
}
msg.setRecipients(Message.RecipientType.TO, addressTo);
// Setting the Subject and Content Type
msg.setSubject(subject);
msg.setContent(message, "text/plain");
Transport.send(msg);
}
/**
* SimpleAuthenticator is used to do simple authentication
* when the SMTP server requires it.
*/
private class SMTPAuthenticator extends javax.mail.Authenticator
{
public PasswordAuthentication getPasswordAuthentication()
{
String username = SMTP_AUTH_USER;
String password = SMTP_AUTH_PWD;
return new PasswordAuthentication(username, password);
}
}
}
黑夜愁客
- 粉丝: 81
- 资源: 48
最新资源
- 2024最新中国 省市县三级表数据,存在一张表中,通过上级编码关联;拿到就可用
- 【PyEcharts】球面
- da_1725970836821.psd
- 资源之video解析小工具
- 汇川MD500 MD380变频器源码,C语言,77版源码 77.54 这比方案里边71.01版算法要高级 新的SVC3算法
- 感应电机 异步电机定子匝间短路仿真 matlab simulink
- 无人船 无人艇路径跟踪控制 fossen模型matlab simulink效果 基于观测器的LOS制导结合反步法控制 ELOS+
- MATLAB代码《基于多智能体系统一致性算法的电力系统分布式经济调度》 软件环境:MATLAB 内容:集中式优化方法难以应对未来
- python使用matplotlib和moviepy库绘制一个动态的月亮
- 三菱PLC工控板 FX1N源码+电路图代码源程序
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
- 1
- 2
前往页