利用Javamail来发送邮件
利用126邮箱提供的服务来发送邮件,但是必须通过邮箱认证
<%@ page import="javax.mail.*" %>
<%@ page import="javax.mail.internet.*" %>
<%@ page import="javax.activation.*" %>
<%@ page import="java.util.*,java.io.*" %>
<%@ page contentType="text/html;charset=GB2312" %>
<html>
<head>
<title>JavaMail.jsp</title>
</head>
<body>
<h2>利用JavaMail来传送电子邮件 </h2>
<%
InternetAddress[] address = null;
request.setCharacterEncoding("GB2312");
String mailserver = "smtp.126.com";
String From = request.getParameter("From");
String to = request.getParameter("To");
String Subject = request.getParameter("Subject");
String Username =request.getParameter("username");
String Password =request.getParameter("password");
String messageText = request.getParameter("Message");
boolean sessionDebug = false;
try {
java.util.Properties props = System.getProperties();
props.put("mail.host",mailserver);
props.put("mail.smtp.auth","true");
props.put("mail.smtp.host",mailserver);
props.put("mail.transport.protocol","smtp");
javax.mail.Session mailSession = javax.mail.Session.getDefaultInstance(props);
mailSession.setDebug(sessionDebug);
Message msg = new MimeMessage(mailSession);
msg.setFrom(new InternetAddress(From));
address = InternetAddress.parse(to,false);
msg.setRecipients(Message.RecipientType.TO, address);
msg.setSubject(Subject);
msg.setSentDate(new Date());
msg.setText(messageText);
msg.saveChanges();
Transport transport = mailSession.getTransport("smtp");
transport.connect(mailserver,Username,Password);
transport.sendMessage(msg, msg.getAllRecipients());
transport.close();
out.println("邮件顺利传送");
}
catch (MessagingException mex) {
mex.printStackTrace();
}
%>
</body>
</html>