
public boolean sendTextMail(MailSenderInfo mailInfo) {
// 判断是否需要身份认证
MyAuthenticator authenticator = null;
Properties pro = mailInfogetProperties();
if (mailInfoisValidate()) {
// 如果需要身份认证,则创建一个密码验证器
authenticator = new MyAuthenticator(mailInfogetUserName(), mailInfogetPassword());
}
// 根据邮件会话属性和密码验证器构造一个发送邮件的session
Session sendMailSession = null;
//sendMailSession = SessiongetDefaultInstance(pro,authenticator); //获取默认可能报错
sendMailSession = SessiongetInstance(pro,authenticator);//新创建一个session
if (sendMailSession==null){
Systemoutprintln("无法获取邮件邮件Session");
}
try {
// 根据session创建一个邮件消息
Message mailMessage = new MimeMessage(sendMailSession);
// 创建邮件发送者地址
Address from = new InternetAddress(mailInfogetFromAddress());
// 设置邮件消息的发送者
mailMessagesetFrom(from);
// 创建邮件的接收者地址,并设置到邮件消息中
Address to = new InternetAddress(mailInfogetToAddress());
mailMessagesetRecipient(MessageRecipientTypeTO,to);
// 设置邮件消息的主题
mailMessagesetSubject(mailInfogetSubject());
// 设置邮件消息发送的时间
mailMessagesetSentDate(new Date());
// 设置邮件消息的主要内容
String mailContent = mailInfogetContent();
mailMessagesetText(mailContent);
//添加附件
// if(mailInfogetAttachFileNames()!=null || mailInfogetAttachFileNames()length>0){
// Multipart mp = new MimeMultipart();
// MimeBodyPart mbp=null;
// for(String fileName:mailInfogetAttachFileNames()){
// mbp=new MimeBodyPart();
// FileDataSource fds=new FileDataSource(fileName); //得到数据源
// mbpsetDataHandler(new DataHandler(fds)); //得到附件本身并至入BodyPart
// mbpsetFileName(fdsgetName()); //得到文件名同样至入BodyPart
// mpaddBodyPart(mbp);
// }
// mailMessagesetContent(mp);
// }
// 发送邮件
Transportsend(mailMessage);
return true;
} catch (MessagingException ex) {
exprintStackTrace();
}
return false;
}
public class MailSenderInfo {
// 发送邮件的服务器的IP和端口
private String mailServerHost;
private String mailServerPort = "25";
// 邮件发送者的地址
private String fromAddress;
// 邮件接收者的地址
private String toAddress;
// 登陆邮件发送服务器的用户名和密码
private String userName;
private String password;
// 是否需要身份验证
private boolean validate = false;
// 邮件主题
private String subject;
// 邮件的文本内容
private String content;
// 邮件附件的文件名
private String[] attachFileNames;
//邮件抄送人
private List<String> ccUserList;
/ //
获得邮件会话属性
/
public Properties getProperties(){
Properties p = new Properties();
pput("mailsmtphost", thismailServerHost);
pput("mailsmtpport", thismailServerPort);
pput("mailsmtpauth", validate "true" : "false");
return p;
}
public String getMailServerHost() {
return mailServerHost;
}
public void setMailServerHost(String mailServerHost) {
thismailServerHost = mailServerHost;
}
public String getMailServerPort() {
return mailServerPort;
}
public void setMailServerPort(String mailServerPort) {
thismailServerPort = mailServerPort;
}
public boolean isValidate() {
return validate;
}
public void setValidate(boolean validate) {
thisvalidate = validate;
}
public String[] getAttachFileNames() {
return attachFileNames;
}
public void setAttachFileNames(String[] fileNames) {
thisattachFileNames = fileNames;
}
public String getFromAddress() {
return fromAddress;
}
public void setFromAddress(String fromAddress) {
thisfromAddress = fromAddress;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
thispassword = password;
}
public String getToAddress() {
return toAddress;
}
public void setToAddress(String toAddress) {
thistoAddress = toAddress;
}
public String getUserName() {
return userName;
}
public void setUserName(String userName) {
thisuserName = userName;
}
public String getSubject() {
return subject;
}
public void setSubject(String subject) {
thissubject = subject;
}
public String getContent() {
return content;
}
public void setContent(String textContent) {
thiscontent = textContent;
}
public List<String> getCcUserList(){
return ccUserList;
}
public void setCcUserList(List<String> ccUserList){
thisccUserList = ccUserList;
}
}
public static void main(String[] args) {
// 这个类主要是设置邮件
MailSenderInfo mailInfo = new MailSenderInfo();
mailInfosetMailServerHost("smtp163com");
mailInfosetMailServerPort("25");
mailInfosetValidate(true);
mailInfosetUserName("zhengzhanzong@163com");
mailInfosetPassword("zzzong0828");// 您的邮箱密码
mailInfosetFromAddress("");
//接受方信息
mailInfosetToAddress("");
mailInfosetSubject("邮箱标题 ");
mailInfosetContent("设置邮箱内容 如> }
这样发
你点发送只是表明,你要求发送的这个请求,网易的服务器已经执行了。但是邮件接收方的服务器可能由于网络原因还没有收到邮件,也就是说邮件发送方服务器(网易的邮件服务器)没有收到对方收到邮件的回执,于是就会显示在发送中。
可以的。21CN企业邮箱可跟踪单封邮件近30天所有邮件的发送及邮件阅读状态。
具体 *** 作方式有两种:方式一:点击已发送旁边的"邮件跟踪",可查询每封发出邮件的发送状态。点击"查看详情"可查看到该邮件的详细发送情况。方式二:在"已发送"邮件箱中,点击任意一封邮件,在信头和内容之间看到"投递状态",点击"查看详情"可查看到该邮件的详细发送情况。
以上就是关于java 发送邮件,内容是要从数据库中读取的数据并列成表格的状态发送出去全部的内容,包括:java 发送邮件,内容是要从数据库中读取的数据并列成表格的状态发送出去、为什么我发的邮件一直处于发送中的状态、在邮件发出后可以查看对方是否收到邮件吗我们用的是21CN企业邮箱等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)