Aspose.Email for Java는 이메일 관리를 위한 모든 기본 및 고급 기능을 제공하는 강력한 이메일 처리 API입니다. Outlook 전자 메일 메시지를 만들고 기존 전자 메일을 읽고 MSG, EML, PST, OST, MBOX 및 MHT 메시지를 Java 응용 프로그램 내에서 다른 형식으로 변환할 수 있습니다. 이 기사에서는 Java를 사용하여 Outlook 전자 메일을 만들고 보내는 방법에 대한 몇 가지 기본적이지만 중요한 기능을 보여줍니다.
이 기사에서는 이메일을 만들고 보내는 다음 기능을 다룰 것입니다.
- Java를 사용하여 Outlook 전자 메일 메시지 만들기
- Java를 사용하여 이메일의 HTML 본문 설정
- Java를 사용하여 특정 인코딩으로 이메일 만들기
- Java를 사용하여 Outlook 이메일 보내기
- Java를 사용하여 비동기식으로 이메일 보내기
- Java를 사용하여 수신 확인이 포함된 이메일 보내기
- Java를 사용하여 대량 이메일 보내기
자바 이메일 API - 설치
Aspose.Email for Java는 다운로드 섹션에서 다운로드하거나 다음 Maven 구성을 사용하여 설치할 수 있습니다.
저장소:
<repository>
<id>AsposeJavaAPI</id>
<name>Aspose Java API</name>
<url>https://repository.aspose.com/repo/</url>
</repository>
의존:
<dependency>
<groupId>com.aspose</groupId>
<artifactId>aspose-email</artifactId>
<version>20.3</version>
<classifier>jdk16</classifier>
</dependency>
Java를 사용하여 Outlook 전자 메일 메시지 만들기
Java용 Aspose.Email을 사용하면 이메일 메시지를 생성하고 EML, EMLX, MSG 및 MHTML을 포함한 원하는 이메일 형식으로 저장할 수 있습니다. 다음은 이메일 메시지를 작성하고 파일로 저장하는 단계입니다.
- MailMessage 클래스의 인스턴스를 만듭니다.
- 제목, 본문, 받는 사람, 참조 등과 같은 메시지의 속성을 설정합니다.
- 필요한 경우 첨부 파일을 추가합니다.
- MailMessage.save() 메소드를 사용하여 이메일 메시지를 원하는 형식으로 저장합니다.
다음 코드 샘플은 Java를 사용하여 Outlook 전자 메일 메시지를 만드는 방법을 보여줍니다.
MailMessage message = new MailMessage();
// 메시지 제목, 본문, 발신자 정보 설정
message.setSubject("New message created by Aspose.Email for .NET");
message.setBody("This is the body of the email.");
message.setFrom(new MailAddress("from@domain.com", "Sender Name", false));
// 받는 사람 및 참조 받는 사람에 추가
message.getTo().addItem(new MailAddress("to1@domain.com", "Recipient 1", false));
message.getCC().addItem(new MailAddress("cc1@domain.com", "Recipient 3", false));
// 첨부 파일 추가
message.getAttachments().addItem(new Attachment("word.docx"));
// EML, EMLX, MSG 및 MHTML 형식으로 메시지 저장
message.save("EmailMessage.eml", SaveOptions.getDefaultEml());
message.save("EmailMessage.emlx", SaveOptions.createSaveOptions(MailMessageSaveType.getEmlxFormat()));
message.save("EmailMessage.msg", SaveOptions.getDefaultMsgUnicode());
message.save("EmailMessage.mhtml", SaveOptions.getDefaultMhtml());
Java를 사용하여 HTML 본문으로 이메일 만들기
이전 예에서는 단순히 일반 텍스트 이메일을 생성하여 이메일 파일로 저장했습니다. 그러나 오늘날 대부분의 이메일은 이메일 내용을 잘 정리하고 표시하기 위해 HTML 본문으로 작성됩니다. 이 경우 HTML 태그를 사용하여 이메일의 레이아웃을 지정합니다. Java용 Aspose.Email을 사용하여 HTML 본문으로 이메일을 만드는 방법을 살펴보겠습니다.
- MailMessage 클래스를 사용하여 새 이메일 메시지를 만듭니다.
- 제목, 받는 사람, 참조 및 기타 속성을 설정합니다.
- MailMessage.setHtmlBody(string) 메소드를 사용하여 이메일 본문을 설정합니다.
- MailMessage.save() 메서드를 사용하여 이메일 메시지를 저장합니다.
다음 코드 샘플은 Java를 사용하여 HTML 본문으로 이메일을 만드는 방법을 보여줍니다.
MailMessage message = new MailMessage();
// 메시지 제목, 본문, 발신자 정보 설정
message.setSubject("New message created by Aspose.Email for .NET");
message.setHtmlBody("<b>This line is in bold.</b> <br/> <br/> <font color=blue>This line is in blue color</font>");
message.setFrom(new MailAddress("from@domain.com", "Sender Name", false));
// 받는 사람 및 참조 받는 사람에 추가
message.getTo().addItem(new MailAddress("to1@domain.com", "Recipient 1", false));
message.getCC().addItem(new MailAddress("cc1@domain.com", "Recipient 3", false));
// EML, EMLX, MSG 및 MHTML 형식으로 메시지 저장
message.save("EmailMessage.eml", SaveOptions.getDefaultEml());
Java를 사용하여 특정 인코딩으로 이메일 만들기
Java용 Aspose.Email을 사용하면 이메일 메시지에 대해 원하는 텍스트 인코딩을 설정할 수도 있습니다. 인코딩 표준은 이메일 본문에 있는 문자를 해석하는 방법에 대해 이메일 애플리케이션이나 브라우저에 알리는 데 사용됩니다. 다음은 특정 인코딩 표준으로 이메일을 만드는 단계입니다.
- MailMessage 클래스의 개체를 만듭니다.
- 제목, 받는 사람, 참조 등의 이메일 속성을 설정합니다.
- MailMessage.setBodyEncoding() 메서드를 사용하여 인코딩 표준을 설정합니다.
- MailMessage.save() 메소드를 사용하여 이메일을 생성하고 저장합니다.
다음 코드 샘플은 Java를 사용하여 특정 인코딩 표준으로 이메일을 생성하는 방법을 보여줍니다.
MailMessage message = new MailMessage();
// 메시지 제목, 본문, 발신자 정보 설정
message.setSubject("New message created by Aspose.Email for .NET");
message.setHtmlBody("<b>This line is in bold.</b> <br/> <br/> <font color=blue>This line is in blue color</font>");
message.setFrom(new MailAddress("from@domain.com", "Sender Name", false));
// 인코딩 지정
message.setBodyEncoding(Charset.forName("US-ASCII"));
// 받는 사람 및 참조 받는 사람에 추가
message.getTo().addItem(new MailAddress("to1@domain.com", "Recipient 1", false));
message.getCC().addItem(new MailAddress("cc1@domain.com", "Recipient 3", false));
// EML, EMLX, MSG 및 MHTML 형식으로 메시지 저장
message.save("EmailMessage.eml", SaveOptions.getDefaultEml());
Java를 사용하여 Outlook 이메일 보내기
이메일을 만든 후에는 SMTP(Simple Mail Transfer Protocol)를 사용하여 수신자에게 보낼 수 있습니다. 다음은 Aspose.Email for Java를 사용하여 이메일 메시지를 보내는 단계입니다.
- MailMessage 클래스를 사용하여 새 이메일 메시지를 만들거나 기존 메시지를 로드합니다.
- SmtpClient 클래스의 인스턴스를 만들고 해당 호스트, 사용자 이름, 암호 및 포트를 설정합니다.
- SmtpClient.send() 메서드를 사용하여 이메일을 보냅니다.
다음 코드 샘플은 Java에서 SMTP 클라이언트를 통해 이메일을 보내는 방법을 보여줍니다.
MailMessage message = new MailMessage();
// 메시지 제목, 본문, 발신자 정보 설정
message.setSubject("New message created by Aspose.Email for .NET");
message.setHtmlBody("<b>This line is in bold.</b> <br/> <br/> <font color=blue>This line is in blue color</font>");
message.setFrom(new MailAddress("from@domain.com", "Sender Name", false));
// 인코딩 지정
message.setBodyEncoding(Charset.forName("US-ASCII"));
// 받는 사람 및 참조 받는 사람에 추가
message.getTo().addItem(new MailAddress("to1@domain.com", "Recipient 1", false));
message.getCC().addItem(new MailAddress("cc1@domain.com", "Recipient 3", false));
// SmtpClient 클래스의 인스턴스 만들기
SmtpClient client = new SmtpClient();
// 메일링 호스트 서버, 사용자 이름, 비밀번호, 포트 지정
client.setHost("smtp.server.com");
client.setUsername("Username");
client.setPassword("Password");
client.setPort(25);
try
{
// Client.Send가 이 메시지를 보냅니다.
client.send(message);
}
catch (Exception ex)
{
ex.printStackTrace();
}
Java를 사용하여 비동기적으로 이메일 보내기
Aspose.Email for Java를 사용하면 이메일을 비동기적으로 보낼 수도 있습니다. 이를 위해 SmtpClient.beginSend() 메서드를 사용할 수 있습니다. 다음 코드 샘플은 Java를 사용하여 비동기적으로 이메일을 보내는 방법을 보여줍니다.
MailMessage message = new MailMessage();
// 메시지 제목, 본문, 발신자 정보 설정
message.setSubject("New message created by Aspose.Email for .NET");
message.setHtmlBody("<b>This line is in bold.</b> <br/> <br/> <font color=blue>This line is in blue color</font>");
message.setFrom(new MailAddress("from@domain.com", "Sender Name", false));
// 인코딩 지정
message.setBodyEncoding(Charset.forName("US-ASCII"));
// 받는 사람 및 참조 받는 사람에 추가
message.getTo().addItem(new MailAddress("to1@domain.com", "Recipient 1", false));
message.getCC().addItem(new MailAddress("cc1@domain.com", "Recipient 3", false));
// SmtpClient 클래스의 인스턴스 만들기
SmtpClient client = new SmtpClient();
// 메일링 호스트 서버, 사용자 이름, 비밀번호, 포트 지정
client.setHost("smtp.server.com");
client.setUsername("Username");
client.setPassword("Password");
client.setPort(25);
try
{
// Client.beginSend가 이 메시지를 보냅니다.
client.beginSend(message);
}
catch (Exception ex)
{
ex.printStackTrace();
}
Java를 사용하여 읽음 확인과 함께 이메일 보내기
이메일 메시지에 수신 확인 요청을 추가할 수도 있습니다. 이 기능을 사용하면 이메일을 받은 후 알림을 받을 수 있습니다. 다음은 읽음 확인 요청이 포함된 전자 메일 메시지를 만들고 보내는 단계입니다.
- MailMessage 클래스를 사용하여 새 이메일 메시지를 만듭니다.
- MailMessage.setDeliveryNotificationOptions() 메서드를 사용하여 배달 알림 옵션을 설정합니다.
- 이메일 헤더에 영수증 정보를 추가합니다.
- SmtpClient 클래스를 사용하여 이메일을 보냅니다.
다음 코드 샘플은 Java를 사용하여 수신 확인이 포함된 이메일을 보내는 방법을 보여줍니다.
MailMessage message = new MailMessage();
// 메시지 제목, 본문, 발신자 정보 설정
message.setSubject("New message created by Aspose.Email for .NET");
message.setHtmlBody("<b>This line is in bold.</b> <br/> <br/> <font color=blue>This line is in blue color</font>");
message.setFrom(new MailAddress("from@domain.com", "Sender Name", false));
// 알림 옵션 설정
message.setDeliveryNotificationOptions(DeliveryNotificationOptions.OnSuccess);
message.getHeaders().add("Return-Receipt-To", "from@domain.com");
message.getHeaders().add("Disposition-Notification-To", "from@domain.com");
// 수신자에게 추가
message.getTo().addItem(new MailAddress("to1@domain.com", "Recipient 1", false));
// SmtpClient 클래스의 인스턴스 만들기
SmtpClient client = new SmtpClient();
// 메일링 호스트 서버, 사용자 이름, 비밀번호, 포트 지정
client.setHost("smtp.server.com");
client.setUsername("Username");
client.setPassword("Password");
client.setPort(25);
try
{
// Client.Send가 이 메시지를 보냅니다.
client.send(message);
}
catch (Exception ex)
{
ex.printStackTrace();
}
Java를 사용하여 대량 이메일 보내기
다양한 이메일을 대량으로 보내야 하는 경우가 있을 수 있습니다. 이 경우 모든 전자 메일 메시지를 MailMessageCollection 개체에 추가하고 보내기 위해 SMTP 클라이언트에 전달할 수 있습니다. 다음 코드 샘플은 Java를 사용하여 대량의 이메일을 보내는 방법을 보여줍니다.
// MailMessage 클래스의 인스턴스를 만들고 To, From, Subject 및 Message를 지정합니다.
MailMessage message1 = new MailMessage("msg1@from.com", "msg1@to.com", "Subject1", "message1, how are you?");
MailMessage message2 = new MailMessage("msg1@from.com", "msg2@to.com", "Subject2", "message2, how are you?");
MailMessage message3 = new MailMessage("msg1@from.com", "msg3@to.com", "Subject3", "message3, how are you?");
// MailMessageCollection의 인스턴스를 만들고 여기에 이메일 메시지를 추가합니다.
MailMessageCollection manyMsg = new MailMessageCollection();
manyMsg.addItem(message1);
manyMsg.addItem(message2);
manyMsg.addItem(message3);
// SmtpClient 생성 및 서버, 포트, 사용자 이름 및 암호 지정
SmtpClient client = new SmtpClient("mail.server.com", 25, "Username", "Password");
try
{
// 메시지 보내기
client.send(manyMsg);
}
catch (Exception ex)
{
ex.printStackTrace();
}
라이브 데모
결론
이 게시물에서는 Outlook 전자 메일 메시지를 만들고 Java를 사용하여 EML, MSG 및 MTH 형식으로 저장하는 방법을 보여주었습니다. 또한 STMP 클라이언트를 사용하여 Java에서 이메일을 보내는 다양한 방법에 대해서도 설명합니다. 문서를 사용하여 Aspose의 Java 이메일 라이브러리에 대해 자세히 알아볼 수 있습니다.