Open-Source-Java-Mailing-Bibliothek für komplexe E-Mails
Java Mailing API ermöglicht Entwicklern das Hinzufügen von Anhängen zu E-Mail-Nachrichten, eingebettete Bilder, Hinzufügen benutzerdefinierter Kopfzeilen, CLI- und S/MIME-Unterstützung in Java-Apps.
Simple Java Mail ist eine leichtgewichtige Open-Source-Java-Mailing-Bibliothek, die Funktionen für die Arbeit mit E-Mails in ihren Java-Anwendungen bereitstellt. Die Bibliothek ist sehr einfach und benutzerfreundlich, sodass Benutzer E-Mails über SMTP senden können. Eine weitere großartige Funktion ist, dass Benutzer zwischen Outlook MSG, EML, MimeMessage und E-Mail konvertieren können. Die Bibliothek enthält Spring-Unterstützung, und Benutzer können Eigenschaften aus dem Spring-Kontext einfach lesen.
Die Bibliothek ist sehr leicht, aber immer noch sehr leistungsfähig und ist die einzige Java-Mailing-Bibliothek, die über einen authentifizierten SOCKS-Proxy senden oder Benutzern die Konfiguration eines Clusters von Verbindungspools ermöglichen kann. Simple Java Mail wird im Laufe der Zeit ausgereift und bietet Unterstützung für einige wichtige Funktionen, wie z Schnittstellen für E-Mail-Validierung und -Versand, Spring-Support, E-Mail-Konvertierungstools und vieles mehr.
Die Simple Java Mail-Bibliothek führt immer einige grundlegende Validierungen durch, z. B. CRLF-Injection-Angriffe, verifiziert E-Mail-Adressen, überprüft Verbindungs- und Sicherheitseigenschaften und vieles mehr. Ein weiterer großartiger Aspekt der API ist, dass sie für fast alles alternative Möglichkeiten enthält, um Dinge zu tun, zum Beispiel können Sie Ihre eigenen Empfängerinstanzen hinzufügen oder durch Komma/Semikolon getrennte Adressen hinzufügen.
Erste Schritte mit Simple Java Mail
Maven-Abhängigkeit
<dependency>
<groupId>org.simplejavamail</groupId>s;
<artifactId>einfache Java-Mail</artifactId>
<version>6.4.3</version>
</dependency>
E-Mail-Konvertierung b/t MimeMessage, EML und Outlook MSG
Die Open-Source-Simple-Java-Mail-Bibliothek ermöglicht es Softwareentwicklern, E-Mails zwischen verschiedenen E-Mail-Typen zu konvertieren. Es beinhaltet auch das Lesen von S/MIME-geschützten E-Mails aus der Datei. Sie können E-Mail-Objekte, EML-Daten und sogar Outlook-MSG-Dateien problemlos in MimeMessage konvertieren. Es ist auch sehr einfach, einen Outlook MSG-zu-EML-Massenkonverter zu erstellen.
E-Mail-Anhänge mit Java hinzufügen
Die Open-Source-Simple-Java-Mail-Bibliothek ermöglicht es Softwareentwicklern, ihren E-Mail-Nachrichten mit nur wenigen Zeilen Java-Code Anhänge hinzuzufügen. Es ist sehr einfach, einen Anhang hinzuzufügen, aber Sie müssen die Daten selbst bereitstellen. Keine Sorge, es kann alles sein, ein PDF-Dokument, ein Textverarbeitungsdokument, ein Bild, eine Excel-CSV-Tabelle oder irgendetwas anderes.
E-Mail-Anhänge über Java hinzufügen
currentEmailBuilder
.withAttachment("dresscode.txt", new ByteArrayDataSource("Black Tie Optional", "text/plain"))
.withAttachment("location.txt", "On the moon!".getBytes(Charset.defaultCharset()), "text/plain")
// ofcourse it can be anything: a pdf, doc, image, csv or anything else
.withAttachment("invitation.pdf", new FileDataSource("invitation_v8.3.pdf"))
// you can provide your own list of attachments as well
.withAttachments(yourAttachmentResourceCollection))
Hinzufügen benutzerdefinierter Header zu Ihren E-Mails
Die Simple Java Mail-Bibliothek erleichtert Java-Entwicklern das Hinzufügen benutzerdefinierter Header und ihrer relevanten Eigenschaften zu ihren E-Mail-Nachrichten in ihren eigenen Anwendungen. Es ist häufig erforderlich, zusätzliche Kopfzeilen in Ihre E-Mail-Nachrichten einzufügen, da der E-Mail-Server, der Empfängerserver oder Ihr E-Mail-Client dies benötigt. Was auch immer der Grund sein mag, es ist sehr einfach, Header in Ihre E-Mail-Nachrichten einzufügen, indem Sie die Simple Java Mail-Bibliothek verwenden.
Fügen Sie benutzerdefinierte Header zu E-Mails über Java hinzu
currentEmailBuilder
.withHeader("X-Priority", 2);
.withHeader("X-MC-GoogleAnalyticsCampaign", "halloween_sale");
.withHeader("X-MEETUP-RECIP-ID", "71415272");
.withHeader("X-my-custom-header", "foo");
// or
.withHeaders(yourHeadersMap);
Validierung von E-Mail-Adressen
Für Unternehmen ist es sehr wichtig, eine gültige E-Mail-Adresse zu haben, um mit ihren Kunden per E-Mail zu kommunizieren. Oft ist die E-Mail-Adresse das einzige Mittel, um mit einer bestimmten Person in Verbindung zu treten. Die Simple Java Mail-Bibliothek kann Ihre E-Mail-Adressen einfach validieren und erleichtert Ihnen die harte Arbeit. Die Bibliothek führt beim Versenden von E-Mails automatisch eine Adressvalidierung durch. Es ermöglicht Benutzern auch, Validierungen direkt in ihren Java-Apps durchzuführen. Die Bibliotheksvalidierung ist keine einfache Regex-Prüfung, sondern bietet eine vollständige und robuste vollständige Validierung.
Validierung von E-Mail-Adressen über Java
currentMailerBuilder
.withEmailValidator(
JMail.strictValidator()
.requireOnlyTopLevelDomains(TopLevelDomain.DOT_COM)
.withRule(email -> email.localPart().startsWith("allowed"))
)
// or
.clearEmailValidator() // turn off validation
.resetEmailValidator() // reset to default (strict)
// you can also directly perform validations:
mailer.validate(email); // does all checks including address validation
// or just do the address validation
JMail.isValid("your_address@domain.com");
// or, fine-tuned to be stricter
JMail.strictValidator()
.isValid("your_address@domain.com");