Microsoft Exchange Server là một máy chủ thư cung cấp email, lập lịch, quản lý liên hệ và các dịch vụ cộng tác khác. Nó có thể dễ dàng được kết nối và truy cập từ bên trong các ứng dụng web hoặc máy tính để bàn của bạn. Do đó, bạn có thể giao tiếp với Exchange Server và truy cập email, danh bạ, lịch, v.v. Trong bài viết này, bạn sẽ học cách kết nối với MS Exchange Server và đọc email bằng Java.
- Java API để làm việc với MS Exchange Server
- Kết nối với MS Exchange Server bằng Java
- Đọc email từ MS Exchange Server bằng Java
- Nhận giấy phép API miễn phí
Java API để làm việc với MS Exchange Server
Aspose.Email dành cho Java là một API mạnh mẽ cung cấp cho bạn một loạt các tính năng quản lý email. Nó cho phép bạn triển khai các ứng dụng email giàu tính năng từ bên trong các ứng dụng Java của bạn. Hơn nữa, API cho phép bạn truy cập các thư mục, thư mục con, email, lịch, danh bạ, v.v. từ MS Exchange Server. Bạn có thể tải xuống JAR của API hoặc cài đặt nó bằng cách sử dụng các cấu hình Maven sau.
<repository>
<id>AsposeJavaAPI</id>
<name>Aspose Java API</name>
<url>http://repository.aspose.com/repo/</url>
</repository>
<dependency>
<groupId>com.aspose</groupId>
<artifactId>aspose-email</artifactId>
<version>21.2</version>
<classifier>jdk16</classifier>
</dependency>
Kết nối với MS Exchange Server bằng Java
Để làm việc với MS Exchange Server, trước tiên bạn cần thiết lập kết nối. Aspose.Email dành cho Java cung cấp các cách sau để kết nối với Máy chủ Exchange.
- Sử dụng Dịch vụ Web Exchange (EWS)
- Sử dụng Giao thức truy cập tin nhắn Internet (IMAP)
Kết nối với Máy chủ Exchange bằng EWS trong Java
Sau đây là các bước để kết nối với Exchange Server qua EWS.
- Tạo một phiên bản của lớp IEWSClient.
- Sử dụng phương thức EWSClient.getEWSClient (String, String, String, String) để khởi tạo đối tượng EWSClient.
Mẫu mã sau đây cho thấy cách kết nối với MS Exchange Server bằng EWS trong Java.
// Tạo một phiên bản của lớp IEWSClient để kết nối với Exchange Server
IEWSClient client = EWSClient.getEWSClient("https://exchange.domain.com/ews/Exchange.asmx/", "user", "password", "");
Kết nối với Máy chủ Exchange bằng IMAP trong Java
Trước khi cố gắng kết nối với Máy chủ Exchange bằng IMAP, hãy đảm bảo rằng bạn đã bật dịch vụ IMAP. Sau khi hoàn tất, sau đây là các bước để kết nối với Máy chủ Exchange bằng IMAP.
- Tạo một thể hiện của lớp ImapClient và khởi tạo nó bằng địa chỉ, cổng, tên người dùng và mật khẩu.
- Truy cập tin nhắn, danh bạ, v.v. bằng đối tượng ImapClient.
Mẫu mã sau đây cho thấy cách kết nối với Exchange Sever bằng IMAP.
// Kết nối với Máy chủ Exchange bằng lớp ImapClient
ImapClient imapClient = new ImapClient("imap.gmail.com", 993, "username", "password");
Đọc email từ MS Exchange Server bằng Java
Khi bạn đã kết nối với Exchange Server, bạn có thể đọc thư từ máy chủ. Bạn có thể thực hiện bằng EWS hoặc IMAP.
Đọc email từ MS Exchange Server bằng EWS
Sau đây là các bước để đọc email từ Exchange Server bằng EWS.
- Tạo một phiên bản của lớp IEWSClient.
- Sử dụng phương thức EWSClient.getEWSClient (String, String, String, String) để khởi tạo đối tượng EWSClient.
- Nhận danh sách thông tin thư từ hộp thư đến vào đối tượng ExchangeMessageInfoCollection bằng phương thức EWSClient.listMessages (EWSClient.getMailboxInfo(). GetInboxUri()).
- Lặp qua từng đối tượng ExchangeMessageInfo trong bộ sưu tập để đọc thư.
Mẫu mã sau đây cho thấy cách đọc thông báo từ Máy chủ Exchange qua EWS trong Java.
// Tạo phiên bản của lớp ExchangeWebServiceClient bằng cách cung cấp thông tin xác thực
IEWSClient client = EWSClient.getEWSClient("https://outlook.office365.com/ews/exchange.asmx", "testUser", "pwd", "domain");
// Phương thức Call ListMessages để liệt kê thông tin tin nhắn từ Inbox
ExchangeMessageInfoCollection msgCollection = client.listMessages(client.getMailboxInfo().getInboxUri());
// Lặp lại bộ sưu tập để nhận URI tin nhắn
for (ExchangeMessageInfo msgInfo : msgCollection) {
String strMessageURI = msgInfo.getUniqueUri();
// Bây giờ lấy chi tiết tin nhắn bằng FetchMessage()
MailMessage msg = client.fetchMessage(strMessageURI);
// Hiển thị thông tin chi tiết
System.out.println("Subject: " + msg.getSubject());
//Console.WriteLine ("HTML Body:" + msg.HtmlBody);
// Có bao nhiêu tệp đính kèm
System.out.println("Number of attachments: " + msg.getAttachments().size());
// Liệt kê các tệp đính kèm
for (Attachment att : msg.getAttachments()) {
System.out.println("Attachment Name: " + att.getName());
}
}
Đọc email từ MS Exchange Server bằng IMAP
Sau đây là các bước để đọc email từ Exchange Server bằng IMAP.
- Tạo một thể hiện của lớp ImapClient và khởi tạo nó bằng địa chỉ, cổng, tên người dùng và mật khẩu.
- Lấy danh sách thông tin thư vào đối tượng ImapMessageInfoCollection bằng cách sử dụng phương thức ImapClient.listMessages().
- Lặp qua từng đối tượng ImapMessageInfo trong bộ sưu tập để đọc email.
Mẫu mã sau đây cho thấy cách đọc email từ Máy chủ Exchange qua IMAP bằng Java.
// Kết nối với Máy chủ Exchange bằng lớp ImapClient
ImapClient imapClient = new ImapClient("imap.gmail.com", 993, "username", "password");
// Chọn thư mục Hộp thư đến
imapClient.selectFolder(ImapFolderInfo.IN_BOX);
// Nhận danh sách các tin nhắn
ImapMessageInfoCollection msgCollection = imapClient.listMessages();
for (ImapMessageInfo msgInfo : msgCollection) {
System.out.println(msgInfo.getSubject());
}
Nhận giấy phép API miễn phí
Bạn có thể dùng thử Aspose.Email dành cho Java mà không có giới hạn đánh giá bằng cách nhận giấy phép tạm thời.
Bản thử trực tiếp
Sự kết luận
Trong bài này, bạn đã học cách kết nối với MS Exchange Server và đọc email bằng Java. Hơn nữa, bạn đã thấy cách truy cập MS Exchange Server bằng EWS hoặc IMAP. Bạn có thể khám phá thêm về Aspose.Email dành cho Java bằng tài liệu. Trong trường hợp bạn có bất kỳ câu hỏi hoặc thắc mắc nào, vui lòng cho chúng tôi biết qua diễn đàn của chúng tôi.