java 发送企业邮箱_Java调用api使用企业邮箱账户发送邮件

package cn.ucmed.otaka.healthcare.rubik.common;

import lombok.extern.slf4j.Slf4j;

import javax.mail.Message;

import javax.mail.Session;

import javax.mail.Transport;

import javax.mail.internet.InternetAddress;

import javax.mail.internet.MimeMessage;

import java.util.Date;

import java.util.Properties;

import java.util.regex.Pattern;

@Slf4jpublic classEmailUtil {private static String emailRegular = "^\\s*\\w+(?:\\.{0,1}[\\w-]+)*@[a-zA-Z0-9]+(?:[-.][a-zA-Z0-9]+)*\\.[a-zA-Z]+\\s*$";public staticboolean validEmail(String emailAddress) {returnPattern.matches(emailRegular, emailAddress);

}private static String fromMailAddress = "邮箱地址";private static String fromMailPwd = "邮箱密码";private static String fromMailSMTPHost = "smtp.exmail.qq.com";private static String smtpPort = "465";private staticProperties setProperties() {

Properties properties= newProperties();

properties.setProperty("mail.transport.protocol", "smtp");

properties.setProperty("mail.smtp.host", fromMailSMTPHost);

properties.setProperty("mail.smtp.auth", "true");

properties.setProperty("mail.smtp.port", smtpPort);

properties.setProperty("mail.smtp.socketFactory.class", "javax.net.ssl.SSLSocketFactory");

properties.setProperty("mail.smtp.socketFactory.fallback", "false");

properties.setProperty("mail.smtp.socketFactory.port", smtpPort);

properties.setProperty("mail.smtp.ssl.enable", "true");

properties.setProperty("mail.debug", "true");returnproperties;

}private staticMessage setMail(Session session, String toEmailAdress, String emailTitle, String emailContent) throws Exception {

MimeMessage message= newMimeMessage(session);

message.setFrom(new InternetAddress(fromMailAddress, fromMailAddress, "UTF-8"));

message.setRecipient(Message.RecipientType.TO,new InternetAddress(toEmailAdress, toEmailAdress, "UTF-8"));

message.setSubject(emailTitle);

message.setContent(emailContent,"text/html;charset=utf-8");

message.setSentDate(newDate());

message.saveChanges();returnmessage;

}private staticSession setSession() {

Properties properties=setProperties();

Session session=Session.getInstance(properties);

session.setDebug(true);returnsession;

}public staticboolean sendEmail(String toEmailAdress, String emailContent, String emailTitle) {

Session session=setSession();try{

Message message=setMail(session, toEmailAdress, emailTitle, emailContent);

Transport transport=session.getTransport();

transport.connect(fromMailAddress, fromMailPwd);

transport.sendMessage(message, message.getAllRecipients());

transport.close();

}catch(Exception e) {

log.error("toEmailAdress =" + toEmailAdress + ", emailContent =" + emailContent + ", emailTitle =" + emailTitle + ", error =" +e.getMessage());return false;

}return true;

}public static voidmain(String[] args) {

EmailUtil.sendEmail("", "testContent", "testTitle");

}

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值