package sendmail;
import java.util.Date;
import java.util.Properties;
import javax.mail.Message;
import javax.mail.Session;
import javax.mail.Transport;
import javax.mail.internet.InternetAddress;
import javax.mail.internet.MimeMessage;
/*********************************
*
* author zhang
*2013-12-10
********************************/
public class javaMail {
public static final String mailAddress = "xxxxxx@163.com";//你的邮箱
public static final String mailUsername = "xxxxxx@163.com";//用户名你的邮箱的用户名
public static final String mailPassword = "xxxxxx";//邮箱密码
public static final String mailServer = "smtp.163.com";
/**
* 群发单显
* @param str_from
* @param str_to
* @param str_title
* @param str_content
* @throws Exception
*/
public static void sends(String str_from, String str_to, String str_title,
String str_content) throws Exception {
try {
Properties props = new Properties();
props.put("mail.smtp.host", mailServer);
props.put("mail.smtp.auth", "true");
Session s = Session.getInstance(props, null);
s.setDebug(true);
MimeMessage message = new MimeMessage(s);
InternetAddress from = new InternetAddress(str_from);
message.setFrom(from); // 设置发件人的地址
// 设置收件人,并设置其接收类型为TO
String[] toStr = str_to.split(",");
InternetAddress [] tos = null;
//拆分长字符串(多个邮箱)
if(toStr == null || toStr.length <= 0){
return ;
}
tos = new InternetAddress[toStr.length];
for (int i = 0; i < toStr.length; i++) {
tos[i]= new InternetAddress(toStr[i]);//设置每一个接收邮件的地址
}
message.setRecipients(Message.RecipientType.TO, tos);
// 设置标题
message.setSubject(str_title);
// 设置信件内容
// message.setText(str_content); //发送文本邮件,下面一行为发送html邮件
message.setContent(str_content, "text/html;charset=gbk");
// 设置发信时间
message.setSentDate(new Date());
// 存储邮件信息
message.saveChanges();
Transport transport = s.getTransport("smtp");
// 以smtp方式登录邮箱,第一个参数是发送邮件用的邮件服务器SMTP地址,第二个参数为用户名,第三个参数为密码
transport.connect(mailServer, mailUsername, mailPassword);
// 发送邮件,其中第二个参数是所有已设好的收件人地址
transport.sendMessage(message, message.getAllRecipients());
transport.close();
} catch (Exception e) {
throw e;
}
}
public static void main(String[] args) {
try {
//第二个参数是你要发送的多个邮箱 邮箱以","号隔开
sends(mailAddress, "aaaaaaaaa@126.com,bbbbbbbb@126.com", "xxx的喜帖",
"这是xxx的喜帖,热情邀请您参加xx和xxx的婚礼,致此:敬上!");
} catch (Exception e) {
e.printStackTrace();
}
}
}
此项目需要引入mail.jar,实现了群发喜帖的功能哦!!至于web方面 只是在页面输入邮箱值映射到action/或者servlet接收而已 相信你可以完成的!
除了java没学好,好像语文也没学好。写程序是需要需求的!!!
什么叫发喜帖的程序啊?给别人发邮件还是什么意思啊?