Java의 Microsoft Exchange Server에서 연락처 추가 또는 삭제

Microsoft Exchange Server는 이메일, 캘린더, 연락처 관리 등과 같은 다양한 협업 서비스를 제공하는 이메일 및 캘린더 서버입니다. 내 게시물 중 하나에서 이메일에 액세스하고 읽는 방법을 보여 드렸습니다. Java에서 프로그래밍 방식으로 Microsoft Exchange Server에서. 그러나 종종 MS Exchange Server에 있는 연락처 목록이 필요합니다. 따라서 이 기사에서는 Java로 Microsoft Exchange Server에서 연락처를 추가, 삭제 또는 업데이트하는 방법을 배웁니다.

MS Exchange Server의 연락처에 액세스하는 Java API

Aspose.Email for Java는 Java에서 이메일 클라이언트 애플리케이션을 구현하는 인기 있는 API입니다. 또한 MS Exchange Server로 작업하고 연락처, 이메일 및 대화 항목을 조작할 수 있습니다. 이 API를 사용하여 Exchange Server에서 연락처를 추가, 업데이트 및 삭제합니다. API의 JAR을 다운로드하거나 다음 Maven 구성을 사용하여 설치할 수 있습니다.

저장소:

<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>22.2</version>
    <classifier>jdk16</classifier>
</dependency>

Java에서 MS Exchange Server에 연락처 추가

다음은 Java에서 Microsoft Exchange Server에 연락처를 추가하는 단계입니다.

  • 먼저 사용자 이름, 암호 및 도메인을 사용하여 NetworkCredential 개체를 만들고 초기화합니다.
  • 그런 다음 사서함 URI와 NetworkCredential 개체로 IEWSClient를 초기화합니다.
  • Contact 클래스의 객체를 생성하고 이름, 직업, 성별, 전화번호, 관련 인물 등의 속성을 설정합니다.
  • 마지막으로 EWSClient.createContact(Contact) 메서드를 호출하여 연락처를 추가합니다.

다음 코드 샘플은 Java에서 Microsoft Exchange Server에 연락처를 추가하는 방법을 보여줍니다.

// 사서함 URI, 사용자 이름, 암호, 도메인 정보 설정
String mailboxUri = "https://ex2010/ews/exchange.asmx";
String username = "test.exchange";
String password = "pwd";
String domain = "ex2010.local";
NetworkCredential credentials = new NetworkCredential(username, password, domain);
IEWSClient client = EWSClient.getEWSClient(mailboxUri, credentials);

// 새 연락처 만들기
Contact contact = new Contact();

// 일반 정보 설정
contact.setGender(Gender.Male);
contact.setDisplayName("Frank Lin");
contact.setCompanyName("ABC Co.");
contact.setJobTitle("Executive Manager");
PhoneNumber tmp0 = new PhoneNumber();
tmp0.setNumber("123456789");
tmp0.setCategory(PhoneNumberCategory.getHome());

// 전화번호 추가
contact.getPhoneNumbers().add(tmp0);
AssociatedPerson tmp1 = new AssociatedPerson();
tmp1.setName("Catherine");
tmp1.setCategory(AssociatedPersonCategory.getSpouse());

// 연락처의 관련자
contact.getAssociatedPersons().add(tmp1);
AssociatedPerson tmp2 = new AssociatedPerson();
tmp2.setName("Bob");
tmp2.setCategory(AssociatedPersonCategory.getChild());
contact.getAssociatedPersons().add(tmp2);
AssociatedPerson tmp3 = new AssociatedPerson();
tmp3.setName("Merry");
tmp3.setCategory(AssociatedPersonCategory.getSister());
contact.getAssociatedPersons().add(tmp3);
Url tmp4 = new Url();
tmp4.setHref("www.blog.com");
tmp4.setCategory(UrlCategory.getBlog());

// URL
contact.getUrls().add(tmp4);
Url tmp5 = new Url();
tmp5.setHref("www.homepage.com");
tmp5.setCategory(UrlCategory.getHomePage());
contact.getUrls().add(tmp5);
EmailAddress tmp6 = new EmailAddress();
tmp6.setAddress("Frank.Lin@Abc.com");
tmp6.setDisplayName("Frank Lin");
tmp6.setCategory(EmailAddressCategory.getEmail1());

// 연락처의 이메일 주소 설정
contact.getEmailAddresses().add(tmp6);

try {
	// 연락처 만들기
	client.createContact(contact);
} catch (java.lang.RuntimeException ex) {
	System.out.println(ex.getMessage());
}

Java의 MS Exchange Server에서 연락처 삭제

MS Exchange Server에서 연락처를 삭제할 수도 있습니다. 연락처를 필터링하려면 이름, 이메일 또는 기타 적절한 속성을 사용할 수 있습니다. 다음은 Java의 Microsoft Exchange Server에서 연락처를 삭제하는 단계입니다.

다음 코드 샘플은 Java의 Microsoft Exchange Server에서 연락처를 삭제하는 방법을 보여줍니다.

// EWS 클라이언트 초기화
IEWSClient client = EWSClient.getEWSClient("https://outlook.office365.com/ews/exchange.asmx", "testUser", "pwd", "domain");

// 담당자 이름
String strContactToDelete = "John Teddy";

// 연락처 가져오기
Contact[] contacts = client.getContacts(client.getMailboxInfo().getContactsUri());

// 연락처를 통해 루프
for (Contact contact : contacts) {
    if (contact.getDisplayName().equals(strContactToDelete))
    	// 연락처 삭제
        client.deleteItem(contact.getId().getEWSId(), DeletionOptions.getDeletePermanently());
}
client.dispose();

Java에서 Exchange Server의 연락처 업데이트

Aspose.Email for Java를 사용하면 MS Exchange Server에서 연락처를 업데이트할 수도 있습니다. 다음은 이 작업을 수행하는 단계입니다.

  • 먼저 사용자 이름, 암호 및 도메인을 사용하여 NetworkCredential 개체를 만들고 초기화합니다.
  • 그런 다음 사서함 URI와 NetworkCredential 개체로 IEWSClient를 초기화합니다.
  • IEWSClient.getContacts(EWSClient.getMailboxInfo().getContactsUri()) 메서드를 사용하여 Exchange Server에서 연락처를 가져옵니다.
  • 그런 다음 연락처를 반복하고 원하는 연락처를 필터링합니다.
  • 마지막으로 연락처의 속성을 업데이트하고 IEWSClient.updateContact(Contact)를 호출하여 저장합니다.

다음 코드 샘플은 Java에서 MS Exchange Server의 연락처를 업데이트하는 방법을 보여줍니다.

// 사서함 URI, 사용자 이름, 암호, 도메인 정보 설정
String mailboxUri = "https://ex2010/ews/exchange.asmx";
String username = "test.exchange";
String password = "pwd";
String domain = "ex2010.local";
NetworkCredential credentials = new NetworkCredential(username, password, domain);

// EWS 클라이언트 초기화
IEWSClient client = EWSClient.getEWSClient(mailboxUri, credentials);

// 모든 연락처를 나열하고 모든 연락처를 통해 루프
Contact[] contacts = client.getContacts(client.getMailboxInfo().getContactsUri());
Contact contact = contacts[0];

// 연락처 정보 업데이트
System.out.println("Name: " + contact.getDisplayName());
contact.setDisplayName("David Ch");
client.updateContact(contact);

무료 API 라이선스 받기

평가 제한 없이 Java용 Aspose.Email을 사용하기 위해 무료 임시 라이선스를 얻을 수 있습니다.

결론

이 기사에서는 Java로 Microsoft Exchange Server의 연락처로 작업하는 방법을 배웠습니다. Java의 MS Exchange Server에서 연락처를 추가, 제거 및 업데이트하는 방법을 시연했습니다. 또한 문서를 탐색하여 Java용 Aspose.Email에 대해 자세히 알아볼 수 있습니다. 또한 포럼에 질문을 게시할 수 있습니다.

또한보십시오