자바 로 qq 메 일 보 내기
4585 단어 자바우편물 을 발송 하 다
오늘 은 QQ 메 일의 POP 3/IMAP/SMTP/Exchange/CardDAV/CalDAV 서 비 스 를 이용 하여 메 일 을 보 내 려 고 시도 하 였 습 니 다!(이 서비스 들 은 프로 토 콜 입 니 다.켜 진 후에 만 작업 을 할 수 있 습 니 다)
순서
1,QQ 메 일 박스 에 로그 인>설정>계 정
2,POP 3/IMAP/SMTP/Exchange/CardDAV/CalDAV 서비스 찾기
POP 3/SMTP 서비스 오픈>인증 코드 획득
3、maven 프로젝트 만 들 기
4.pom.xml 에서 의존 팩 가 져 오기
<!-- java jar -->
<dependency>
<groupId>javax.mail</groupId>
<artifactId>mail</artifactId>
<version>1.4.7</version>
</dependency>
5.자바 클래스 이름 만 들 기:SendEmailManger(가방 오류 안내 주의)
package com.xdl.util;
import com.sun.mail.util.MailSSLSocketFactory;
import javax.mail.*;
import javax.mail.internet.InternetAddress;
import javax.mail.internet.MimeMessage;
import java.util.Properties;
/**
*
* QQ --->
* @author shiyunpeng
*/
public class SendEmailManger extends Thread {
private String mailAdr;//
private String content;//
private String subject;//
public SendEmailManger(String mailAdr, String subject, String content) {
super();
this.mailAdr = mailAdr;
this.subject = subject;
this.content = content;
}
@Override
public void run() {
super.run();
try {
sendMail(mailAdr, subject, content);
} catch (Exception e) {
e.printStackTrace();
}
}
private void sendMail(String mailAdr, String subject, String content) throws Exception {
//
MailSSLSocketFactory sf = new MailSSLSocketFactory();
sf.setTrustAllHosts(true);
final Properties props = new Properties();
// SMTP ,
props.put("mail.transport.protocol", "smtp");
props.put("mail.smtp.auth", "true");
props.put("mail.smtp.host", "smtp.qq.com");
// smtp 、 ; smtp
props.setProperty("mail.debug", "true");
props.put("mail.user", " ");
props.put("mail.password", " ");
// , ssl true, 530
props.put("mail.smtp.ssl.enable", "true");
props.put("mail.smtp.ssl.socketFactory", sf);
Authenticator authenticator = new Authenticator() {
protected PasswordAuthentication getPasswordAuthentication() {
// 、
String userName = props.getProperty("mail.user");
String password = props.getProperty("mail.password");
return new PasswordAuthentication(userName, password);
}
};
// ,
Session mailSession = Session.getInstance(props, authenticator);
//
MimeMessage message = new MimeMessage(mailSession);
//
try {
InternetAddress form = new InternetAddress(props.getProperty("mail.user"));
message.setFrom(form);
//
InternetAddress to = new InternetAddress(mailAdr);
message.setRecipient(Message.RecipientType.TO, to);
//
// InternetAddress cc = new InternetAddress("[email protected]");
// message.setRecipient(RecipientType.CC, cc);
// ,
// InternetAddress bcc = new InternetAddress("[email protected]");
// message.setRecipient(RecipientType.CC, bcc);
//
message.setSubject(subject);
//
message.setContent(content, "text/html;charset=UTF-8");
//
Transport.send(message);
} catch (MessagingException e) {
e.printStackTrace();
}
}
public static void main(String[] args) {
SendEmailManger d = new SendEmailManger(" ", "syp:", " , : <br/><br/> !!!!....");
d.start();
}
}
이상 이 바로 본 고의 모든 내용 입 니 다.여러분 의 학습 에 도움 이 되 고 저 희 를 많이 응원 해 주 셨 으 면 좋 겠 습 니 다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Is Eclipse IDE dying?In 2014 the Eclipse IDE is the leading development environment for Java with a market share of approximately 65%. but ac...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.