前提:需要有javamail的類文件包,JAF(javabean activation framework)。
需要的類:
1 Properties
javamail需要properties來創建一個session對象。它將尋找字符串"mail.smtp.host"。屬性值就是發送郵件的主機,如:
Properties props = new Properties();
props.put("mail.smtp.host","smtp.sohu.com");
2 Session
這個Session類代表javamail中的一個郵件session,每一個基于javamail的應用程序至少要有一個session,但是可以有多個session,session對象需要知道用來處理郵件的smtp郵件服務器。例如:
Session sendMailSession;
sendMailSession = Session.getInstance(props, null);
3 Transport
javamail 用兩個類來實現兩個功能:Transport 和 Store。transport用來發信,store用來收信。
用javamail的session的getTransport()方法來初始化Transport 。傳過去的字符串申明了對象所要用的協議。如smtp,如:
Transport transport ;
transprot = sendMessageSession.getTransport("smtp");
javamail并不是支持每一個協議。目前支持imap smtp pop3
4 Message
Message 對象存儲我們實際發送的電子郵件信息。Message對象被作為一個MimeMessage對象來創建并且需要知道應當選擇哪一個JavaMail Session
Message newMessage = new MimeMessage(sendMailSession);
創建并發送Message對象
message.setFrom(new InternetAddress(request.getParameter("from")));
message.setRecipient(Message.RecipientType.TO, new InternetAddress(request.getParameter("to")));
message.setSubject(request.getParameter("subject"));
message.setSentDate(new Date());
message.setText(request.getParameter("text"));
transport.send(message);