Я пытаюсь написать простую почтовую программу в Java. Что я должен использовать. Как настроить мой локальный компьютер для отправки почты? - PullRequest
1 голос
/ 27 октября 2010

Я пишу какое-то приложение, в котором мне нужно отправлять письма. Мое приложение находится в JAVA, поэтому, вероятно, я буду использовать javamail. Но я не знаю, как его использовать и как настроить почтовый сервер с моего локального компьютера, чтобы я мог проверить возможность отправки почты. Пожалуйста, предложите.

1 Ответ

3 голосов
/ 27 октября 2010

вы также можете использовать GMAIL SMTP для отправки почты.
Вот пример кода

String host = "smtp.gmail.com";
    String from = "username";
    String pass = "password";
    Properties props = System.getProperties();
    props.put("mail.smtp.starttls.enable", "true"); // added this line
    props.put("mail.smtp.host", host);
    props.put("mail.smtp.user", from);
    props.put("mail.smtp.password", pass);
    props.put("mail.smtp.port", "587");
    props.put("mail.smtp.auth", "true");

    String[] to = {"to@gmail.com"}; // added this line

    Session session = Session.getDefaultInstance(props, null);
    MimeMessage message = new MimeMessage(session);
    message.setFrom(new InternetAddress(from));

    InternetAddress[] toAddress = new InternetAddress[to.length];

    // To get the array of addresses
    for( int i=0; i < to.length; i++ ) { // changed from a while loop
        toAddress[i] = new InternetAddress(to[i]);
    }
    System.out.println(Message.RecipientType.TO);

    for( int i=0; i < toAddress.length; i++) { // changed from a while loop
        message.addRecipient(Message.RecipientType.TO, toAddress[i]);
    }
    message.setSubject("sending in a group");
    message.setText("Welcome to JavaMail");
    Transport transport = session.getTransport("smtp");
    transport.connect(host, from, pass);
    transport.sendMessage(message, message.getAllRecipients());
    transport.close();
...