Jos käytät Sunin tarjoamaa JavaMail-sovellusliittymää, voit ladata uusimman version Sunin lataussivustolta.
JavaMail käyttää ominaisuuksia kaikkien asetusten lataamiseen ohjelmaan.
Sinun on määritettävä:
# SMTP-palvelimesi isäntänimi tai IP-osoite
mail.smtp.host=smtp.duke.java.sun.com
# Saat runsaasti virheenkorjaustietoja, jos
# tämä on käytössä. Kommentoi tämä rivi, jos haluat poistaa sen käytöstä
#, sammuta se.
mail.debug=true
# Vastaanottajan sähköpostiosoite
ttapr2004.to=duke@duke.java.sun.com
# Lähettäjän sähköpostiosoite
ttapr2004.from=duke@j2ee_fanclub.java.su…
Voit muodostaa yhteyden SMTP-palvelimeen helposti ilman todennusta. Saatat kuitenkin huomata, ettet pysty lähettämään sähköpostia Java-ohjelmastasi:
1. Palomuuri saattaa estää IP-osoitteesi pääsyn Yhteys SMTP-palvelimeen
2. SMTP-palvelimesi estää lähettäjän osoitteen, vastaanottajan osoitteen ja mahdollisesti IP-osoitteesi.
3. SMTP-palvelimesi vaatii todennusta
Jos palvelimesi vaatii tunnistautumista, sain tämän tiedon internetistä
————————————–…
public class SendMailUsingAuthentication {
private static final String SMTP_HOST_NAME = "myserver.smtphost.com";
private static final String SMTP_AUTH_USER = "myusername";
private static final String SMTP_AUTH_PWD = "mypwd";
private static final String emailMsgTxt =
"Verkkotilauksen vahvistusviesti. Sisältää myös seurantanumeron.";
private static final String emailSubjectTxt = "Tilausvahvistuksen otsikko";
private static final String emailFromAddress = "sudhir@javacommerce.com";
// Lisää luettelo sähköpostiosoitteista, joihin viesti on lähetettävä
private static final String[] emailList = {
"mark@yahoo.com", "robin@javacommerce.com"};
public static void main(String args[]) throws Exception {
SendMailUsingAuthentication smtpMailSender = new
SendMailUsingAuthentication();
smtpMailSender.postMail(sähköpostilista, sähköpostin aihe, sähköpostiviestin teksti,
emailFromAddress);
System.out.println("Sähköposti lähetetty onnistuneesti kaikille käyttäjille");
}
public void postMail(String recipients[], String subject,
String message, String from) throws MessagingException {
boolean debug = false;
//Määritä SMTP-palvelimen osoite
Properties props = new Properties();
props.put("mail.smtp.host", SMTP_HOST_NAME);
props.put("mail.smtp.auth", "true");
Authenticator auth = new SMTPAuthenticator();
Session session = Session.getDefaultInstance(props, auth);
session.setDebug(debug);
// luo viesti
Message msg = new MimeMessage(session);
// määritä lähettäjän ja vastaanottajan osoitteet
InternetAddress addressFrom = new InternetAddress(from);
msg.setFrom(addressFrom);
InternetAddress[] addressTo = new InternetAddress[recipients.length];
for (int i = 0; i < recipients.length; i++) {
addressTo[i] = new InternetAddress(recipients[i]);
}
msg.setRecipients(Message.RecipientType…. addressTo);
// Aiheen ja sisältötyypin määrittäminen
msg.setSubject(subject);
msg.setContent(message, "text/plain");
Transport.send(msg);
}
/**
* SimpleAuthenticator-luokkaa käytetään yksinkertaisen todennuksen suorittamiseen
* kun SMTP-palvelin sitä vaatii.
*/
yksityinen luokka SMTPAuthenticator
laajentaa javax.mail.Authenticator {
public PasswordAuthentication getPasswordAuthentication() {
String käyttäjätunnus = SMTP_AUTH_USER;
String password = SMTP_AUTH_PWD;
return new PasswordAuthentication(käyttäjätunnus, salasana);
}
}
}
————————————–…
Vastuuvapauslauseke - Tässä artikkelissa esitetyt näkemykset ovat kolmannen osapuolen tarjoamia ja eivät välttämättä vastaa verkkosivustomme näkemyksiä.
