Sending mail from java

后端 未结 4 823
谎友^
谎友^ 2020-12-22 07:41

What is the easiest way to send and receive mails in java.

相关标签:
4条回答
  • Don't forget Jakarta Commons Email for sending mail. It has a very easy to use API.

    0 讨论(0)
  • 2020-12-22 08:19

    Check this package out. From the link, here's a code sample:

    Properties props = new Properties();
    props.put("mail.smtp.host", "my-mail-server");
    props.put("mail.from", "me@example.com");
    Session session = Session.getInstance(props, null);
    
    try {
        MimeMessage msg = new MimeMessage(session);
        msg.setFrom();
        msg.setRecipients(Message.RecipientType.TO,
                          "you@example.com");
        msg.setSubject("JavaMail hello world example");
        msg.setSentDate(new Date());
        msg.setText("Hello, world!\n");
        Transport.send(msg);
    } catch (MessagingException mex) {
        System.out.println("send failed, exception: " + mex);
    }
    
    0 讨论(0)
  • 2020-12-22 08:27

    JavaMail is the traditional answer for sending email (as everyone's pointing out).

    As you also want to receive mail, however, you should check out Apache James. It's a modular mail server and heavily configurable. It'll talk POP and IMAP, supports custom plugins and can be embedded in your application (if you so wish).

    0 讨论(0)
  • 2020-12-22 08:32
    try {
    Properties props = new Properties();
    props.put("mail.smtp.host", "mail.server.com");
    props.put("mail.smtp.auth","true");
    props.put("mail.smtp.user", "test@server.com");
    props.put("mail.smtp.port", "25");
    props.put("mail.debug", "true");
    
    Session session = Session.getDefaultInstance(props);
    
    MimeMessage msg = new MimeMessage(session);
    
    msg.setFrom(new InternetAddress("test@server.com"));
    
    InternetAddress addressTo = null;
    addressTo = new InternetAddress("test@mail.net");
    msg.setRecipient(javax.mail.Message.RecipientType.TO, addressTo);
    
    msg.setSubject("My Subject");
    msg.setContent("My Message", "text/html; charset=iso-8859-9");
    
    Transport t = session.getTransport("smtp");   
    t.connect("test@server.com", "password");
    t.sendMessage(msg, msg.getAllRecipients());
    t.close();
    } catch(Exception exc) {
      exc.printStackTrace();
    }
    
    0 讨论(0)
提交回复
热议问题