javamail 的用法

    技术2022-05-11  75

     

    今天研究了一天javamail 用法有两种:

    1.不需要验证

     

    <% @ page language = " java "  pageEncoding = " UTF-8 "  contentType = " text/html;charset=utf-8 "   %> <% @ page  import = "  javax.mail.*, javax.mail.internet.*, javax.activation.*,java.util.* "   %> < html > < head > < TITLE > JavaMail 电子邮件发送系统 </ TITLE > </ HEAD > < BODY > <% try {    Properties props = new Properties();        Session sendMailSession = Session.getInstance(props, null);        Message newMessage = new MimeMessage(sendMailSession);    newMessage.setFrom(new InternetAddress("<tj_yangyongfu@163.com>"));    newMessage.setRecipient(Message.RecipientType.TO, new InternetAddress("<yangyongfu@21tb.com>"));    newMessage.setSubject("subject21");    newMessage.setSentDate(new Date());    newMessage.setText("text21");    Transport transport = sendMailSession.getTransport("smtp");    transport.connect("smtp.163.com""tj_yangyongfu""11111111111111");    newMessage.saveChanges();    transport.sendMessage(newMessage, newMessage.getAllRecipients());    transport.close();%><p>你的邮件已发送,请返回。</p><%    }      catch (Exception e)     {            e.printStackTrace();        out.println(e.toString());    } %> </ BODY > </ HTML >

     

    2.需要验证 

    此时又有两种写法

    2.1

     

    <% @ page language = " java "  pageEncoding = " UTF-8 "  contentType = " text/html;charset=utf-8 "   %> <% @ page  import = "  javax.mail.*, javax.mail.internet.*, javax.activation.*,java.util.* "   %> < html > < head > < TITLE > JavaMail 电子邮件发送系统 </ TITLE > </ HEAD > < BODY > <% try {    Properties props = new Properties();    props.put("mail.smtp.auth","true");        Session sendMailSession = Session.getInstance(props, null);        Message newMessage = new MimeMessage(sendMailSession);    newMessage.setFrom(new InternetAddress("<tj_yangyongfu@163.com>"));    newMessage.setRecipient(Message.RecipientType.TO, new InternetAddress("<yangyongfu@21tb.com>"));    newMessage.setSubject("subject21");    newMessage.setSentDate(new Date());    newMessage.setText("text21");    Transport transport = sendMailSession.getTransport("smtp");    transport.connect("smtp.163.com""tj_yangyongfu""1111111111");    newMessage.saveChanges();    transport.sendMessage(newMessage, newMessage.getAllRecipients());    transport.close();%><p>你的邮件已发送,请返回。</p><%    }      catch (Exception e)     {            e.printStackTrace();        out.println(e.toString());    } %> </ BODY > </ HTML >

     

    2.2

     

    <% @ page language = " java "  pageEncoding = " UTF-8 "  contentType = " text/html;charset=utf-8 "   %> <% @ page  import = "  javax.mail.*, javax.mail.internet.*, javax.activation.*,java.util.* "   %> < html > < head > < TITLE > JavaMail 电子邮件发送系统 </ TITLE > </ HEAD > < BODY > <% try {    Properties props = new Properties();    props.put("mail.smtp.host""smtp.163.com");    props.put("mail.smtp.auth","true");    Session sendMailSession = Session.getInstance(props,         new Authenticator() {            public PasswordAuthentication getPasswordAuthentication() {                String username = "tj_yangyongfu"//163邮箱登录帐号                String pwd = "111111111"//登录密码                return new PasswordAuthentication(username, pwd);            }        }    );        Message newMessage = new MimeMessage(sendMailSession);    newMessage.setFrom(new InternetAddress("<tj_yangyongfu@163.com>"));    newMessage.setRecipient(Message.RecipientType.TO, new InternetAddress("<yangyongfu@21tb.com>"));    newMessage.setSubject("subject21");    newMessage.setSentDate(new Date());    newMessage.setText("text21");    Transport .send(newMessage);%><p>你的邮件已发送,请返回。</p><%    }      catch (Exception e)     {            e.printStackTrace();        out.println(e.toString());    } %> </ BODY > </ HTML >

    这两种方式等价,但是2.1更灵活一点。

    网上的其他教程写的都不全。

    研究到此,特记之!


    最新回复(0)