Skapa och skicka Outlook-e-post Java

Aspose.Email for Java är ett kraftfullt e-postbearbetnings-API som tillhandahåller alla grundläggande såväl som avancerade funktioner för e-posthantering. Det låter dig skapa Outlook-e-postmeddelanden, läsa befintliga e-postmeddelanden och konvertera MSG-, EML-, PST-, OST-, MBOX- och MHT-meddelanden till andra format från dina Java-applikationer. I den här artikeln kommer jag att visa några grundläggande men viktiga funktioner för hur man skapar och skickar Outlook-e-post med Java.

Jag kommer att täcka följande funktioner för att skapa och skicka e-postmeddelanden i den här artikeln:

Java Email API - Installation

Aspose.Email för Java kan laddas ner från avsnittet Nedladdningar eller installeras med följande Maven-konfigurationer.

Förvar:

<repository>
    <id>AsposeJavaAPI</id>
    <name>Aspose Java API</name>
    <url>https://repository.aspose.com/repo/</url>
</repository>

Beroende:

<dependency>
    <groupId>com.aspose</groupId>
    <artifactId>aspose-email</artifactId>
    <version>20.3</version>
    <classifier>jdk16</classifier>
</dependency>

Skapa Outlook-e-postmeddelanden med Java

Aspose.Email för Java låter dig skapa e-postmeddelanden och spara dem i önskat e-postformat inklusive EML, EMLX, MSG och MHTML. Följande är stegen för att skapa ett e-postmeddelande och spara det som en fil.

  • Skapa en instans av klassen MailMessage.
  • Ställ in meddelandets egenskaper som Ämne, Brödtext, Till, CC, etc.
  • Lägg till bilagor om det behövs.
  • Spara e-postmeddelandet i önskat format med metoden MailMessage.save().

Följande kodexempel visar hur du skapar ett Outlook-e-postmeddelande med Java.

MailMessage message = new MailMessage();

// Ange ämne för meddelandet, text och avsändarinformation
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));

// Lägg till till mottagare och CC-mottagare
message.getTo().addItem(new MailAddress("to1@domain.com", "Recipient 1", false));
message.getCC().addItem(new MailAddress("cc1@domain.com", "Recipient 3", false));

// Lägg till bilagor
message.getAttachments().addItem(new Attachment("word.docx"));

// Spara meddelande i EML-, EMLX-, MSG- och MHTML-format
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());

Skapa ett e-postmeddelande med HTML Body med Java

I det föregående exemplet skapade vi helt enkelt ett e-postmeddelande med vanlig text och sparade det som en e-postfil. Men de flesta e-postmeddelanden idag skapas med HTML-kropp för att väl organisera och presentera e-postmeddelandets innehåll. I det här fallet används HTML-taggar för att ange layouten för e-postmeddelandet. Låt oss se hur man skapar ett e-postmeddelande med en HTML-kropp med Aspose.Email för Java.

Följande kodexempel visar hur du skapar ett e-postmeddelande med en HTML-text med Java.

MailMessage message = new MailMessage();

// Ange ämne för meddelandet, text och avsändarinformation
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));

// Lägg till till mottagare och CC-mottagare
message.getTo().addItem(new MailAddress("to1@domain.com", "Recipient 1", false));
message.getCC().addItem(new MailAddress("cc1@domain.com", "Recipient 3", false)); 

// Spara meddelande i EML-, EMLX-, MSG- och MHTML-format
message.save("EmailMessage.eml", SaveOptions.getDefaultEml()); 

Skapa ett e-postmeddelande med en särskild kodning med Java

Aspose.Email för Java låter dig också ställa in önskad textkodning för e-postmeddelanden. Kodningsstandarden används för att berätta för e-postapplikationen eller webbläsaren hur man tolkar tecknen i e-postmeddelandets kropp. Följande är stegen för att skapa ett e-postmeddelande med en viss kodningsstandard.

Följande kodexempel visar hur man skapar ett e-postmeddelande med en viss kodningsstandard med Java.

MailMessage message = new MailMessage();

// Ange ämne för meddelandet, text och avsändarinformation
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));

// Ange kodning 
message.setBodyEncoding(Charset.forName("US-ASCII"));

// Lägg till till mottagare och CC-mottagare
message.getTo().addItem(new MailAddress("to1@domain.com", "Recipient 1", false));
message.getCC().addItem(new MailAddress("cc1@domain.com", "Recipient 3", false)); 

// Spara meddelande i EML-, EMLX-, MSG- och MHTML-format
message.save("EmailMessage.eml", SaveOptions.getDefaultEml()); 

Skicka Outlook-e-post med Java

När du har skapat ett e-postmeddelande kan du skicka det till mottagarna med Simple Mail Transfer Protocol (SMTP). Följande är stegen för att skicka ett e-postmeddelande med Aspose.Email för Java.

  • Skapa ett nytt e-postmeddelande eller ladda ett befintligt med klassen MailMessage.
  • Skapa en instans av klassen SmtpClient och ställ in dess värd, användarnamn, lösenord och port.
  • Skicka e-post med metoden SmtpClient.send().

Följande kodexempel visar hur man skickar ett e-postmeddelande via SMTP-klient i Java.

MailMessage message = new MailMessage();

// Ange ämne för meddelandet, text och avsändarinformation
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));

// Ange kodning 
message.setBodyEncoding(Charset.forName("US-ASCII"));

// Lägg till till mottagare och CC-mottagare
message.getTo().addItem(new MailAddress("to1@domain.com", "Recipient 1", false));
message.getCC().addItem(new MailAddress("cc1@domain.com", "Recipient 3", false)); 

// Skapa en instans av SmtpClient Class
SmtpClient client = new SmtpClient();

// Ange din e-postvärdserver, användarnamn, lösenord, port
client.setHost("smtp.server.com");
client.setUsername("Username");
client.setPassword("Password");
client.setPort(25);

try
{
	// Client.Send skickar detta meddelande
	client.send(message); 
}

catch (Exception ex)
{
	ex.printStackTrace();
}

Skicka e-post asynkront med Java

Aspose.Email för Java låter dig också skicka e-postmeddelanden asynkront. För detta kan du använda metoden SmtpClient.beginSend(). Följande kodexempel visar hur man skickar e-postmeddelanden asynkront med Java.

MailMessage message = new MailMessage();

// Ange ämne för meddelandet, text och avsändarinformation
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));

// Ange kodning 
message.setBodyEncoding(Charset.forName("US-ASCII"));

// Lägg till till mottagare och CC-mottagare
message.getTo().addItem(new MailAddress("to1@domain.com", "Recipient 1", false));
message.getCC().addItem(new MailAddress("cc1@domain.com", "Recipient 3", false)); 

// Skapa en instans av SmtpClient Class
SmtpClient client = new SmtpClient();

// Ange din e-postvärdserver, användarnamn, lösenord, port
client.setHost("smtp.server.com");
client.setUsername("Username");
client.setPassword("Password");
client.setPort(25);

try
{
	// Client.beginSend kommer att skicka detta meddelande
	client.beginSend(message); 
}

catch (Exception ex)
{
	ex.printStackTrace();
}

Skicka e-postmeddelanden med ett läskvitto med Java

Du kan också lägga till en begäran om ett läskvitto i e-postmeddelandena. Med den här funktionen kan du få ett meddelande efter att e-postmeddelandet har tagits emot. Följande är stegen för att skapa och skicka ett e-postmeddelande som innehåller en begäran om läskvitto.

Följande kodexempel visar hur man skickar ett e-postmeddelande som innehåller ett läskvitto med Java.

MailMessage message = new MailMessage();

// Ange ämne för meddelandet, text och avsändarinformation
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));

// Ställ in aviseringsalternativ
message.setDeliveryNotificationOptions(DeliveryNotificationOptions.OnSuccess);
message.getHeaders().add("Return-Receipt-To", "from@domain.com");
message.getHeaders().add("Disposition-Notification-To", "from@domain.com"); 

// Lägg till mottagare 
message.getTo().addItem(new MailAddress("to1@domain.com", "Recipient 1", false)); 

// Skapa en instans av SmtpClient Class
SmtpClient client = new SmtpClient();

// Ange din e-postvärdserver, användarnamn, lösenord, port
client.setHost("smtp.server.com");
client.setUsername("Username");
client.setPassword("Password");
client.setPort(25);

try
{
	// Client.Send skickar detta meddelande
	client.send(message);
}

catch (Exception ex)
{
	ex.printStackTrace();
}

Skicka massmeddelanden med Java

Det kan vara fallet när du behöver skicka en massa olika e-postmeddelanden. I så fall kan du helt enkelt lägga till alla e-postmeddelanden till ett MailMessageCollection-objekt och skicka det till SMTP-klienten för sändning. Följande kodexempel visar hur man skickar en stor del av e-postmeddelanden med Java.

// Skapa instanser av klassen MailMessage och ange Till, Från, Ämne och Meddelande
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?");

// Skapa en instans av MailMessageCollection och lägg till e-postmeddelanden till den
MailMessageCollection manyMsg = new MailMessageCollection();
manyMsg.addItem(message1);
manyMsg.addItem(message2);
manyMsg.addItem(message3);		

// Skapa SmtpClient och ange server, port, användarnamn och lösenord
SmtpClient client = new SmtpClient("mail.server.com", 25, "Username", "Password");
 
try
{  
	// Skicka meddelanden
	client.send(manyMsg); 
}
catch (Exception ex)
{
	  ex.printStackTrace();
}

Livedemos

Slutsats

I det här inlägget har jag visat dig hur du skapar Outlook-e-postmeddelanden och sparar dem som EML-, MSG- och MTH-format med Java. Dessutom diskuteras olika sätt att skicka e-post i Java med hjälp av STMP-klienten. Du kan lära dig mer om Asposes Java Email Library med hjälp av dokumentationen.

Se även

Skapa Outlook-meddelanden och skicka e-postmeddelanden med C#Hämta e-postmeddelanden från POP3-server i PythonHämta kontaktlista från Microsoft Exchange Server i C#
Hämta kontaktlista från Microsoft Exchange Server i JavaImportera kontakter från Gmail i C#Importera Gmail-kontakter i Java
Flytta e-post till en mapp på Microsoft Exchange Server i C#Flytta e-post till en mapp på Microsoft Exchange Server i JavaParse Outlook PST-filer i Python
Läs e-postmeddelanden från delad postlåda på Exchange Server i C#Läs e-postmeddelanden från delad postlåda på Exchange Server i JavaLäs MS Outlook PST-filer i C# .NET
Läs MS Outlook PST-filer i JavaLäs Outlook MSG-filer i C#Arbeta med konversationer på MS Exchange Server i C#
Arbeta med konversationer på MS Exchange Server i JavaSkriv och läs meddelanden på Thunderbird Storage i C#Skriv och läs meddelanden på Thunderbird Storage i Java
Skriv och läs meddelanden på Thunderbird Storage i PythonSkicka e-postmeddelanden via SMTP i PythonLäs e-postmeddelanden från Exchange Server i C#