今天研究了一天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更灵活一点。
网上的其他教程写的都不全。
研究到此,特记之!
