javax.mail을 사용하여 BCC 수신자에게 전자 메일을 보내십시오

StackOverflow https://stackoverflow.com//questions/21014699

  •  21-12-2019
  •  | 
  •  

문제

코드의 아래 부분을 가지고 있지만 BCC 수신자를 SendMessage에 추가하는 방법을 알아낼 수 없습니다.

아이디어가 있습니까?

           MimeMessage message = new MimeMessage(mailSession);

      String today = new SimpleDateFormat("yyyy-MM-dd").format(Calendar
              .getInstance().getTime());

      message.setSubject("This is my email for:" + today);
      message.setFrom(new InternetAddress("thesender@gmail.com"));
      String []to = new String []{"therecipient1@gmail.com"};
      String []bcc = new String[]{"therecipient2@gmail.com","therecipient3@gmail.com","therecipient4@gmail.com"};
      message.addRecipient(Message.RecipientType.TO, new InternetAddress(to[0]));
      message.addRecipient(Message.RecipientType.BCC, new InternetAddress(bcc[0]));
      message.addRecipient(Message.RecipientType.BCC, new InternetAddress(bcc[1]));
      message.addRecipient(Message.RecipientType.BCC, new InternetAddress(bcc[2]));
      String body = theBody;
      message.setContent(body,"text/html");
      transport.connect();

        transport.sendMessage(message,message.getRecipients(Message.RecipientType.TO));
        transport.close();
.

도움이 되었습니까?

해결책

다음 메소드를 사용하여 여러 재활용을 추가해야합니다

public void  addRecipients(Message.RecipientType type, Address[] addresses)
.

또한 다음 줄 대신

transport.sendMessage(message,message.getRecipients(Message.RecipientType.TO));
.

를 사용해보십시오
transport.sendMessage(message,message.getAllRecipients());
.

다른 팁

        String [] to=new String[3];
        to[0]="adfsdf@gmail.com";
        to[1]="dffff@gmail.com";
        to[2]="ddddddddddsssssss@outlook.com";
        InternetAddress[] toAddress = new InternetAddress[to.length];

        // To get the array of addresses
        for( int i = 0; i < to.length; i++ ) {
            toAddress[i] = new InternetAddress(to[i]);
        }

        for( int i = 0; i < toAddress.length; i++) {
            message.addRecipient(Message.RecipientType.TO, toAddress[i]);

        }


        message.setSubject("Testing ");
        message.setText("dddd,"
            + "\n\n No spam to my email, please!");

        Transport.send(message);
.
라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top