자바 기반 자바 메 일 로 메 일 보 내기
7436 단어 자바mail우편물 을 발송 하 다
우편 협의.주로 다음 을 포함한다.
SMTP 프로 토 콜:Simple Mail Transfer Protocol,즉 간단 한 메 일 전송 프로 토 콜 로 메 일 을 보 내 는 데 사 용 됩 니 다.
POP 3 프로 토 콜:Post Office Protocol 3,즉 우체국 프로 토 콜 의 세 번 째 버 전 으로 메 일 을 받 는 데 사 용 됩 니 다.
IMAP 프로 토 콜:Internet Message Access Protocol,즉 인터넷 메시지 액세스 프로 토 콜 은 POP 3 의 대체 프로 토 콜 입 니 다.
--------------------------------------------------------------------------------
2.James 메 일 서버 구축
James 는 Apache 의 오픈 소스 프로젝트 로 순수한 자바 구현
James 서버 구축
① apache-james-2.3.2.zip 압축 풀기
② bin 디 렉 터 리 에 있 는 run.bat 를 실행 하면 서버[Telnet]를 시작 합 니 다. localhost 4555]
③ apps\\james\SAR-INF\\config.xml 를 통 해 서버 설정
주:먼저 빈 아래 에서 run 하 세 요.중국어 디 렉 터 리 가 아 닌 경우 제어 판 에서 Telnet 클 라 이언 트 를 열 어야 합 니 다.
--------------------------------------------------------------------------------
3.OutLook[메 일 클 라 이언 트]설치
제품 키:PQDV9-GPDV4-CRM4D-PHDTH-4M2MT
사용자 계 정 만 들 기
1.telnet 으로 James 를 연결 하 는 Remote Administration Tool
2.관리자 로 로그 인
3.adduser 명령 으로 사용자 추가
--------------------------------------------------------------------------------
4.outlook 메 일 클 라 이언 트 설정
보기 편 하도록 Microsoft Outlook 메 일 클 라 이언 트 를 설정 하여 James 메 일 서버 가 시작 상태 임 을 보증 하고 Microsoft Outlook 을 시작 할 수 있 습 니 다.
"도구"->"옵션"을 선택 하고"옵션"패 널 을 엽 니 다.'메 일 설정'을 선택 하고'메 일 계 정'을 클릭 하여'계 정 설정'패 널 을 엽 니 다."전자 우편"옵션 아래 새 메 일 계 정
--------------------------------------------------------------------------------
5.사례[James 메 일 서버 구축]
필요 설명:
이 컴퓨터 에 James 메 일 서버 를 구축 하여 서버 의 이름 을 사용자 정의 합 니 다.
테스트 사용자 두 명 을 만 듭 니 다.
Microsoft Outlook 에서 테스트 사용 자 를 Outlook 메 일 계 정 으로 설정 합 니 다.
--------------------------------------------------------------------------------
6.자바 메 일 로 이메일 보 내기(사례)
필요:
자바 메 일 기술 을 사용 하여 A 계 정 에서 B 계 정 에 이메일 을 보 내 는 것 을 실현 합 니 다.제목 은'회의 알림'이 고 메 일 내용 은'XX 안녕하세요!"내일 오후 16 시 정각에 B01 회의실 에 가서 기술 토론 회 를 열 어 주세요."Outlook 클 라 이언 트 를 통 해 메 일 프로그램 이 보 낸 메 일이 성공 적 으로 보 냈 는 지 확인 합 니 다.
키 코드:
클래스 Email Authenticator 를 만 들 고 Authenticator 에서 계승 하 며 사용자 이름과 비밀 번 호 를 삽입 합 니 다.
Mail 클래스 설정 메 일 정보 만 들 기:
public class Mail {
private String mailServer,from,to,mailSubject,mailContent;
private String username,password;
public Mail(){
//
//
username="[email protected]";
//
password="hq";
//
mailServer="192.168.17.176";
//
from="wj";
//
to="[email protected]";
//
mailSubject=" 333";
//
mailContent=" ! , ";
}
//
@SuppressWarnings("static-access")
public void send(){
Properties prop=System.getProperties();
// server
prop.put("mail.smtp.host", mailServer);
//
prop.put("mail.smtp.auth", "true");
//smtp
prop.put("mail.smtp.port", "25");
// Session
EmailAuthenticator mailauth=new EmailAuthenticator(username, password);
Session mailSession=Session.getInstance(prop,(Authenticator)mailauth);
try {
// Message
Message message=new MimeMessage(mailSession);
message.setFrom(new InternetAddress(from)); //
message.setRecipient(Message.RecipientType.TO, new InternetAddress(to));//
message.setSubject(mailSubject);
// ( )
message.setContent(mailContent,"text/html;charset=gbk");
message.setSentDate(new Date());
// Transport ,
Transport tran=mailSession.getTransport("smtp");
tran.send(message,message.getAllRecipients());
tran.close();
} catch (Exception e) {
e.printStackTrace();
}
}
테스트 클래스:
public class MyTest {
public static void main(String[] args) {
Mail mail=new Mail();
mail.send();
System.out.println("success!");
}
}
--------------------------------------------------------------------------------
7.첨부 파일 을 보 내 는 Mail
public class MailWithAttachment {
private JavaMailSender mailSender; // JavaMailSender
public void setMailSender(JavaMailSender mailSender) {
this.mailSender = mailSender;
}
public void send() throws MessagingException,IOException{
MimeMessage mimeMessage = mailSender.createMimeMessage();
MimeMessageHelper helper = new MimeMessageHelper(mimeMessage, true, "UTF-8");
helper.setFrom("[email protected]");
helper.setTo("[email protected]");
helper.setSubject(" ");
helper.setText(" , !!!");
// 1
ClassPathResource file1 = new ClassPathResource(
"/cn/bdqn/attachfiles/test.doc");
helper.addAttachment(file1.getFilename(), file1.getFile());
// 2: , ,
ClassPathResource file2 = new ClassPathResource(
"/cn/bdqn/attachfiles/ .doc");
helper.addAttachment(MimeUtility.encodeWord(file2.getFilename()),file2.getFile());
mailSender.send(mimeMessage);
}
}
테스트 클래스:
public class MailTest {
public static void main(String[] args){
ApplicationContext context = new ClassPathXmlApplicationContext("applicationContext.xml");
/* */
try{
MailWithAttachment mailWithAttach = (MailWithAttachment)context.getBean("mailWithAttachment");
mailWithAttach.send();
}catch(Exception e){
System.out.print(e.toString());
}
}
}
applicationContext.xml:큰 설정이상 이 바로 본 고의 모든 내용 입 니 다.여러분 의 학습 에 도움 이 되 고 저 희 를 많이 응원 해 주 셨 으 면 좋 겠 습 니 다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 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에 따라 라이센스가 부여됩니다.