Aspose.Email for Java, e-posta yönetimi için tüm temel ve gelişmiş özellikleri sağlayan güçlü bir e-posta işleme API’sidir. Java uygulamalarınızdan Outlook e-posta mesajları oluşturmanıza, mevcut e-postaları okumanıza ve MSG, EML, PST, OST, MBOX ve MHT mesajlarını diğer biçimlere dönüştürmenize olanak tanır. Bu makalede, Java kullanarak Outlook e-postalarının nasıl oluşturulacağına ve gönderileceğine ilişkin bazı temel ancak önemli özellikleri göstereceğim.
Bu makalede e-posta oluşturma ve gönderme ile ilgili aşağıdaki özellikleri ele alacağım:
- Java kullanarak Outlook e-posta mesajı oluşturun
- Java kullanarak e-posta için HTML gövdesini ayarlayın
- Java kullanarak belirli bir kodlamaya sahip bir e-posta oluşturun
- Java kullanarak Outlook e-postaları gönderin
- Java kullanarak e-postaları eşzamansız olarak gönderin
- Java kullanarak okundu bilgisi içeren bir e-posta gönderin
- Java kullanarak toplu e-postalar gönderin
Java Email API - Kurulum
Aspose.Email for Java İndirilenler bölümünden indirilebilir veya aşağıdaki Maven yapılandırmaları kullanılarak kurulabilir.
Depo:
<repository>
<id>AsposeJavaAPI</id>
<name>Aspose Java API</name>
<url>https://repository.aspose.com/repo/</url>
</repository>
Bağımlılık:
<dependency>
<groupId>com.aspose</groupId>
<artifactId>aspose-email</artifactId>
<version>20.3</version>
<classifier>jdk16</classifier>
</dependency>
Java kullanarak Outlook E-posta İletileri Oluşturma
Aspose.Email for Java, e-posta mesajları oluşturmanıza ve bunları EML, EMLX, MSG ve MHTML dahil istediğiniz e-posta biçiminde kaydetmenize olanak tanır. Aşağıda, bir e-posta iletisi oluşturma ve bunu bir dosya olarak kaydetme adımları yer almaktadır.
- MailMessage sınıfının bir örneğini oluşturun.
- İletinin Konu, Gövde, Kime, Bilgi vb. özelliklerini ayarlayın.
- Gerekirse ekler ekleyin.
- MailMessage.save() yöntemini kullanarak e-posta mesajını istediğiniz biçimde kaydedin.
Aşağıdaki kod örneği, Java kullanılarak bir Outlook e-posta iletisinin nasıl oluşturulacağını gösterir.
MailMessage message = new MailMessage();
// Mesajın konusunu, gövdesini ve gönderen bilgilerini ayarlayın
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));
// Alıcılara ve CC alıcılarına ekle
message.getTo().addItem(new MailAddress("to1@domain.com", "Recipient 1", false));
message.getCC().addItem(new MailAddress("cc1@domain.com", "Recipient 3", false));
// Ek ekle
message.getAttachments().addItem(new Attachment("word.docx"));
// Mesajı EML, EMLX, MSG ve MHTML formatlarında kaydedin
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 kullanarak HTML Gövdesi ile bir E-posta oluşturun
Önceki örnekte, basit bir şekilde düz metin bir e-posta oluşturduk ve bunu bir e-posta dosyası olarak kaydettik. Bununla birlikte, günümüzde e-postaların çoğu, e-postanın içeriğini iyi organize etmek ve sunmak için HTML gövdesiyle oluşturulur. Bu durumda, e-postanın düzenini belirtmek için HTML etiketleri kullanılır. Aspose.Email for Java kullanarak HTML gövdeli bir e-postanın nasıl oluşturulacağını görelim.
- Yeni bir e-posta mesajı oluşturmak için MailMessage sınıfını kullanın.
- Konu, Kime, CC ve diğer özellikleri ayarlayın.
- MailMessage.setHtmlBody(string) yöntemini kullanarak e-postanın gövdesini ayarlayın.
- MailMessage.save() yöntemini kullanarak e-posta mesajını kaydedin.
Aşağıdaki kod örneği, Java kullanılarak bir HTML gövdesiyle nasıl e-posta oluşturulacağını gösterir.
MailMessage message = new MailMessage();
// Mesajın konusunu, gövdesini ve gönderen bilgilerini ayarlayın
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));
// Alıcılara ve CC alıcılarına ekle
message.getTo().addItem(new MailAddress("to1@domain.com", "Recipient 1", false));
message.getCC().addItem(new MailAddress("cc1@domain.com", "Recipient 3", false));
// Mesajı EML, EMLX, MSG ve MHTML formatlarında kaydedin
message.save("EmailMessage.eml", SaveOptions.getDefaultEml());
Java Kullanarak Belirli Bir Kodlamaya Sahip Bir E-posta Oluşturun
Aspose.Email for Java ayrıca e-posta mesajları için istediğiniz metin kodlamasını ayarlamanıza olanak tanır. Kodlama standardı, e-posta uygulamasına veya tarayıcıya e-postanın gövdesindeki karakterlerin nasıl yorumlanacağını anlatmak için kullanılır. Aşağıda, belirli bir kodlama standardına sahip bir e-posta oluşturma adımları verilmiştir.
- MailMessage sınıfından bir nesne oluşturun.
- Konu, Alıcı, Bilgi vb. gibi e-posta özelliklerini ayarlayın.
- MailMessage.setBodyEncoding() yöntemini kullanarak kodlama standardını ayarlayın.
- MailMessage.save() yöntemini kullanarak e-postayı oluşturun ve kaydedin.
Aşağıdaki kod örneği, Java kullanarak belirli bir kodlama standardına sahip bir e-postanın nasıl oluşturulacağını gösterir.
MailMessage message = new MailMessage();
// Mesajın konusunu, gövdesini ve gönderen bilgilerini ayarlayın
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));
// kodlamayı belirtin
message.setBodyEncoding(Charset.forName("US-ASCII"));
// Alıcılara ve CC alıcılarına ekle
message.getTo().addItem(new MailAddress("to1@domain.com", "Recipient 1", false));
message.getCC().addItem(new MailAddress("cc1@domain.com", "Recipient 3", false));
// Mesajı EML, EMLX, MSG ve MHTML formatlarında kaydedin
message.save("EmailMessage.eml", SaveOptions.getDefaultEml());
Java kullanarak Outlook E-postaları gönderin
Bir e-posta oluşturduktan sonra, Basit Posta Aktarım Protokolü’nü (SMTP) kullanarak alıcılarına gönderebilirsiniz. Aspose.Email for Java kullanarak bir e-posta mesajı gönderme adımları aşağıdadır.
- MailMessage sınıfını kullanarak yeni bir e-posta mesajı oluşturun veya mevcut bir mesajı yükleyin.
- SmtpClient sınıfının bir örneğini oluşturun ve ana bilgisayarını, kullanıcı adını, parolasını ve bağlantı noktasını ayarlayın.
- SmtpClient.send() yöntemini kullanarak e-posta gönderin.
Aşağıdaki kod örneği, Java’da SMTP istemcisi aracılığıyla bir e-postanın nasıl gönderileceğini gösterir.
MailMessage message = new MailMessage();
// Mesajın konusunu, gövdesini ve gönderen bilgilerini ayarlayın
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));
// kodlamayı belirtin
message.setBodyEncoding(Charset.forName("US-ASCII"));
// Alıcılara ve CC alıcılarına ekle
message.getTo().addItem(new MailAddress("to1@domain.com", "Recipient 1", false));
message.getCC().addItem(new MailAddress("cc1@domain.com", "Recipient 3", false));
// Bir SmtpClient Sınıfı örneği oluşturun
SmtpClient client = new SmtpClient();
// Posta barındırma sunucunuzu, Kullanıcı Adınızı, Parolanızı, Bağlantı Noktasını belirtin
client.setHost("smtp.server.com");
client.setUsername("Username");
client.setPassword("Password");
client.setPort(25);
try
{
// Client.Send bu mesajı gönderecek
client.send(message);
}
catch (Exception ex)
{
ex.printStackTrace();
}
Java kullanarak Eşzamansız Olarak E-posta Gönderme
Aspose.Email for Java ayrıca e-postaları eşzamansız olarak göndermenizi sağlar. Bunun için SmtpClient.beginSend() yöntemini kullanabilirsiniz. Aşağıdaki kod örneği, Java kullanarak e-postaların eşzamansız olarak nasıl gönderileceğini gösterir.
MailMessage message = new MailMessage();
// Mesajın konusunu, gövdesini ve gönderen bilgilerini ayarlayın
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));
// kodlamayı belirtin
message.setBodyEncoding(Charset.forName("US-ASCII"));
// Alıcılara ve CC alıcılarına ekle
message.getTo().addItem(new MailAddress("to1@domain.com", "Recipient 1", false));
message.getCC().addItem(new MailAddress("cc1@domain.com", "Recipient 3", false));
// Bir SmtpClient Sınıfı örneği oluşturun
SmtpClient client = new SmtpClient();
// Posta barındırma sunucunuzu, Kullanıcı Adınızı, Parolanızı, Bağlantı Noktasını belirtin
client.setHost("smtp.server.com");
client.setUsername("Username");
client.setPassword("Password");
client.setPort(25);
try
{
// Client.beginSend bu mesajı gönderecek
client.beginSend(message);
}
catch (Exception ex)
{
ex.printStackTrace();
}
Java Kullanarak Okundu Bilgisi Olan E-postalar Gönderme
E-posta mesajlarına okundu bilgisi isteği de ekleyebilirsiniz. Bu özellik, e-posta alındıktan sonra bir bildirim almanızı sağlar. Aşağıda, okundu bilgisi isteği içeren bir e-posta iletisi oluşturma ve gönderme adımları yer almaktadır.
- MailMessage sınıfını kullanarak yeni bir e-posta mesajı oluşturun.
- MailMessage.setDeliveryNotificationOptions() yöntemini kullanarak teslimat bildirimi seçeneğini ayarlayın.
- E-posta başlıklarına makbuz bilgilerini ekleyin.
- E-postayı göndermek için SmtpClient sınıfını kullanın.
Aşağıdaki kod örneği, Java kullanılarak okundu bilgisi içeren bir e-postanın nasıl gönderileceğini gösterir.
MailMessage message = new MailMessage();
// Mesajın konusunu, gövdesini ve gönderen bilgilerini ayarlayın
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));
// Bildirim seçeneklerini ayarla
message.setDeliveryNotificationOptions(DeliveryNotificationOptions.OnSuccess);
message.getHeaders().add("Return-Receipt-To", "from@domain.com");
message.getHeaders().add("Disposition-Notification-To", "from@domain.com");
// alıcılara ekle
message.getTo().addItem(new MailAddress("to1@domain.com", "Recipient 1", false));
// Bir SmtpClient Sınıfı örneği oluşturun
SmtpClient client = new SmtpClient();
// Posta barındırma sunucunuzu, Kullanıcı Adınızı, Parolanızı, Bağlantı Noktasını belirtin
client.setHost("smtp.server.com");
client.setUsername("Username");
client.setPassword("Password");
client.setPort(25);
try
{
// Client.Send bu mesajı gönderecek
client.send(message);
}
catch (Exception ex)
{
ex.printStackTrace();
}
Java Kullanarak Toplu E-postalar Gönderin
Bir yığın farklı e-posta göndermeniz gerektiğinde durum söz konusu olabilir. Bu durumda, tüm e-posta mesajlarını bir MailMessageCollection nesnesine ekleyebilir ve göndermek için SMTP istemcisine iletebilirsiniz. Aşağıdaki kod örneği, Java kullanılarak toplu e-postaların nasıl gönderileceğini gösterir.
// MailMessage sınıfının örneklerini oluşturun ve Kime, Kimden, Konu ve Mesajı belirtin
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?");
// Bir MailMessageCollection örneği oluşturun ve buna e-posta mesajları ekleyin
MailMessageCollection manyMsg = new MailMessageCollection();
manyMsg.addItem(message1);
manyMsg.addItem(message2);
manyMsg.addItem(message3);
// SmtpClient oluşturun ve sunucu, bağlantı noktası, kullanıcı adı ve parolayı belirtin
SmtpClient client = new SmtpClient("mail.server.com", 25, "Username", "Password");
try
{
// Mesaj yolla
client.send(manyMsg);
}
catch (Exception ex)
{
ex.printStackTrace();
}
Canlı Demolar
Çözüm
Bu yazıda, Java kullanarak Outlook e-posta mesajlarını nasıl oluşturacağınızı ve bunları EML, MSG ve MTH formatlarında nasıl kaydedeceğinizi gösterdim. Ayrıca, Java’da STMP istemcisini kullanarak e-posta göndermenin farklı yolları da tartışılmaktadır. Belgeleri kullanarak Aspose’un Java Email Library hakkında daha fazla bilgi edinebilirsiniz.