Aspose.Email for Java to potężny interfejs API do przetwarzania wiadomości e-mail, który zapewnia wszystkie podstawowe i zaawansowane funkcje zarządzania pocztą e-mail. Pozwala tworzyć wiadomości e-mail programu Outlook, czytać istniejące wiadomości e-mail i konwertować wiadomości MSG, EML, PST, OST, MBOX i MHT do innych formatów z poziomu aplikacji Java. W tym artykule pokażę kilka podstawowych, ale ważnych funkcji tworzenia i wysyłania wiadomości e-mail programu Outlook przy użyciu języka Java.
W tym artykule omówię następujące funkcje tworzenia i wysyłania wiadomości e-mail:
- Utwórz wiadomość e-mail programu Outlook przy użyciu języka Java
- Ustaw treść HTML dla wiadomości e-mail za pomocą języka Java
- Utwórz wiadomość e-mail z określonym kodowaniem za pomocą języka Java
- Wysyłaj wiadomości e-mail z programu Outlook przy użyciu języka Java
- Asynchronicznie wysyłaj wiadomości e-mail za pomocą języka Java
- Wyślij wiadomość e-mail z potwierdzeniem przeczytania za pomocą języka Java
- Wysyłaj masowe wiadomości e-mail za pomocą języka Java
Interfejs API poczty e-mail Java — instalacja
Aspose.Email for Java można pobrać z sekcji Downloads lub zainstalować przy użyciu następujących konfiguracji Maven.
Magazyn:
<repository>
<id>AsposeJavaAPI</id>
<name>Aspose Java API</name>
<url>https://repository.aspose.com/repo/</url>
</repository>
Zależność:
<dependency>
<groupId>com.aspose</groupId>
<artifactId>aspose-email</artifactId>
<version>20.3</version>
<classifier>jdk16</classifier>
</dependency>
Twórz wiadomości e-mail programu Outlook przy użyciu języka Java
Aspose.Email dla języka Java umożliwia tworzenie wiadomości e-mail i zapisywanie ich w żądanym formacie wiadomości e-mail, w tym EML, EMLX, MSG i MHTML. Poniżej przedstawiono kroki tworzenia wiadomości e-mail i zapisywania jej jako pliku.
- Utwórz instancję klasy MailMessage.
- Ustaw właściwości wiadomości, takie jak Temat, Treść, Do, DW itp.
- W razie potrzeby dodaj załączniki.
- Zapisz wiadomość e-mail w żądanym formacie, używając metody MailMessage.save().
Poniższy przykładowy kod pokazuje, jak utworzyć wiadomość e-mail programu Outlook przy użyciu języka Java.
MailMessage message = new MailMessage();
// Ustaw temat wiadomości, treść i informacje o nadawcy
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));
// Dodaj do odbiorców i odbiorców DW
message.getTo().addItem(new MailAddress("to1@domain.com", "Recipient 1", false));
message.getCC().addItem(new MailAddress("cc1@domain.com", "Recipient 3", false));
// Dodaj załączniki
message.getAttachments().addItem(new Attachment("word.docx"));
// Zapisz wiadomość w formatach EML, EMLX, MSG i 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());
Utwórz wiadomość e-mail z treścią HTML za pomocą języka Java
W poprzednim przykładzie po prostu utworzyliśmy wiadomość e-mail w postaci zwykłego tekstu i zapisaliśmy ją jako plik wiadomości e-mail. Jednak większość dzisiejszych wiadomości e-mail jest tworzona z treścią HTML, aby dobrze uporządkować i zaprezentować treść wiadomości e-mail. W tym przypadku znaczniki HTML służą do określenia układu wiadomości e-mail. Zobaczmy, jak utworzyć wiadomość e-mail z treścią HTML za pomocą Aspose.Email for Java.
- Użyj klasy MailMessage, aby utworzyć nową wiadomość e-mail.
- Ustaw Temat, Do, DW i inne właściwości.
- Ustaw treść e-maila za pomocą metody MailMessage.setHtmlBody(string).
- Zapisz wiadomość e-mail za pomocą metody MailMessage.save().
Poniższy przykładowy kod pokazuje, jak utworzyć wiadomość e-mail z treścią HTML przy użyciu języka Java.
MailMessage message = new MailMessage();
// Ustaw temat wiadomości, treść i informacje o nadawcy
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));
// Dodaj do odbiorców i odbiorców DW
message.getTo().addItem(new MailAddress("to1@domain.com", "Recipient 1", false));
message.getCC().addItem(new MailAddress("cc1@domain.com", "Recipient 3", false));
// Zapisz wiadomość w formatach EML, EMLX, MSG i MHTML
message.save("EmailMessage.eml", SaveOptions.getDefaultEml());
Utwórz wiadomość e-mail z określonym kodowaniem za pomocą języka Java
Aspose.Email for Java pozwala również ustawić żądane kodowanie tekstu dla wiadomości e-mail. Standard kodowania służy do informowania aplikacji pocztowej lub przeglądarki o tym, jak interpretować znaki w treści wiadomości e-mail. Poniżej przedstawiono kroki tworzenia wiadomości e-mail z określonym standardem kodowania.
- Utwórz obiekt klasy MailMessage.
- Ustaw właściwości wiadomości e-mail, takie jak Temat, Do, DW itp.
- Ustaw standard kodowania za pomocą metody MailMessage.setBodyEncoding().
- Utwórz i zapisz wiadomość e-mail za pomocą metody MailMessage.save().
Poniższy przykładowy kod pokazuje, jak utworzyć wiadomość e-mail z określonym standardem kodowania przy użyciu języka Java.
MailMessage message = new MailMessage();
// Ustaw temat wiadomości, treść i informacje o nadawcy
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));
// Określ kodowanie
message.setBodyEncoding(Charset.forName("US-ASCII"));
// Dodaj do odbiorców i odbiorców DW
message.getTo().addItem(new MailAddress("to1@domain.com", "Recipient 1", false));
message.getCC().addItem(new MailAddress("cc1@domain.com", "Recipient 3", false));
// Zapisz wiadomość w formatach EML, EMLX, MSG i MHTML
message.save("EmailMessage.eml", SaveOptions.getDefaultEml());
Wysyłaj wiadomości e-mail programu Outlook przy użyciu języka Java
Po utworzeniu wiadomości e-mail można ją wysłać do odbiorców za pomocą protokołu SMTP (Simple Mail Transfer Protocol). Poniżej przedstawiono kroki, aby wysłać wiadomość e-mail za pomocą Aspose.Email for Java.
- Utwórz nową wiadomość e-mail lub załaduj istniejącą, używając klasy MailMessage.
- Utwórz instancję klasy SmtpClient i ustaw jej hosta, nazwę użytkownika, hasło i port.
- Wyślij e-mail za pomocą metody SmtpClient.send().
Poniższy przykładowy kod pokazuje, jak wysłać wiadomość e-mail za pośrednictwem klienta SMTP w Javie.
MailMessage message = new MailMessage();
// Ustaw temat wiadomości, treść i informacje o nadawcy
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));
// Określ kodowanie
message.setBodyEncoding(Charset.forName("US-ASCII"));
// Dodaj do odbiorców i odbiorców DW
message.getTo().addItem(new MailAddress("to1@domain.com", "Recipient 1", false));
message.getCC().addItem(new MailAddress("cc1@domain.com", "Recipient 3", false));
// Utwórz instancję klasy SmtpClient
SmtpClient client = new SmtpClient();
// Określ serwer hosta poczty, nazwę użytkownika, hasło, port
client.setHost("smtp.server.com");
client.setUsername("Username");
client.setPassword("Password");
client.setPort(25);
try
{
// Client.Send wyśle tę wiadomość
client.send(message);
}
catch (Exception ex)
{
ex.printStackTrace();
}
Wysyłaj wiadomości e-mail asynchronicznie przy użyciu języka Java
Aspose.Email dla Javy umożliwia także asynchroniczne wysyłanie wiadomości e-mail. W tym celu możesz użyć metody SmtpClient.beginSend(). Poniższy przykładowy kod pokazuje, jak asynchronicznie wysyłać wiadomości e-mail przy użyciu języka Java.
MailMessage message = new MailMessage();
// Ustaw temat wiadomości, treść i informacje o nadawcy
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));
// Określ kodowanie
message.setBodyEncoding(Charset.forName("US-ASCII"));
// Dodaj do odbiorców i odbiorców DW
message.getTo().addItem(new MailAddress("to1@domain.com", "Recipient 1", false));
message.getCC().addItem(new MailAddress("cc1@domain.com", "Recipient 3", false));
// Utwórz instancję klasy SmtpClient
SmtpClient client = new SmtpClient();
// Określ serwer hosta poczty, nazwę użytkownika, hasło, port
client.setHost("smtp.server.com");
client.setUsername("Username");
client.setPassword("Password");
client.setPort(25);
try
{
// Client.beginSend wyśle tę wiadomość
client.beginSend(message);
}
catch (Exception ex)
{
ex.printStackTrace();
}
Wysyłaj wiadomości e-mail z potwierdzeniem odczytu za pomocą języka Java
Do wiadomości e-mail można również dodać prośbę o potwierdzenie przeczytania. Ta funkcja umożliwia otrzymanie powiadomienia po odebraniu wiadomości e-mail. Poniżej przedstawiono kroki tworzenia i wysyłania wiadomości e-mail zawierającej prośbę o potwierdzenie przeczytania.
- Utwórz nową wiadomość e-mail, korzystając z klasy MailMessage.
- Ustaw opcję powiadomienia o dostarczeniu za pomocą metody MailMessage.setDeliveryNotificationOptions().
- Dodaj informacje o potwierdzeniu w nagłówkach e-maili.
- Użyj klasy SmtpClient, aby wysłać wiadomość e-mail.
Poniższy przykładowy kod pokazuje, jak wysłać wiadomość e-mail zawierającą potwierdzenie przeczytania przy użyciu języka Java.
MailMessage message = new MailMessage();
// Ustaw temat wiadomości, treść i informacje o nadawcy
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));
// Ustaw opcje powiadomień
message.setDeliveryNotificationOptions(DeliveryNotificationOptions.OnSuccess);
message.getHeaders().add("Return-Receipt-To", "from@domain.com");
message.getHeaders().add("Disposition-Notification-To", "from@domain.com");
// Dodaj do odbiorców
message.getTo().addItem(new MailAddress("to1@domain.com", "Recipient 1", false));
// Utwórz instancję klasy SmtpClient
SmtpClient client = new SmtpClient();
// Określ serwer hosta poczty, nazwę użytkownika, hasło, port
client.setHost("smtp.server.com");
client.setUsername("Username");
client.setPassword("Password");
client.setPort(25);
try
{
// Client.Send wyśle tę wiadomość
client.send(message);
}
catch (Exception ex)
{
ex.printStackTrace();
}
Wysyłaj masowe wiadomości e-mail za pomocą języka Java
Może się zdarzyć, że będziesz musiał wysłać wiele różnych e-maili. W takim przypadku możesz po prostu dodać wszystkie wiadomości e-mail do obiektu MailMessageCollection i przekazać je klientowi SMTP w celu wysłania. Poniższy przykładowy kod pokazuje, jak wysłać dużą liczbę wiadomości e-mail przy użyciu języka Java.
// Utwórz instancje klasy MailMessage i określ Do, Od, Temat i Wiadomość
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?");
// Utwórz instancję MailMessageCollection i dodaj do niej wiadomości e-mail
MailMessageCollection manyMsg = new MailMessageCollection();
manyMsg.addItem(message1);
manyMsg.addItem(message2);
manyMsg.addItem(message3);
// Utwórz SmtpClient i określ serwer, port, nazwę użytkownika i hasło
SmtpClient client = new SmtpClient("mail.server.com", 25, "Username", "Password");
try
{
// Wysłać wiadomości
client.send(manyMsg);
}
catch (Exception ex)
{
ex.printStackTrace();
}
Demo na żywo
Wniosek
W tym poście pokazałem, jak tworzyć wiadomości e-mail programu Outlook i zapisywać je w formatach EML, MSG i MTH przy użyciu języka Java. Ponadto omówiono różne sposoby wysyłania wiadomości e-mail w Javie z wykorzystaniem klienta STMP. Możesz dowiedzieć się więcej o Java Email Library Aspose, korzystając z dokumentacji.