📜  JSP-发送电子邮件(1)

📅  最后修改于: 2023-12-03 15:02:26.510000             🧑  作者: Mango

JSP-发送电子邮件

在Web应用程序中,你可能需要将电子邮件发送给用户。在Java中,我们可以使用JavaMail API来发送电子邮件。本文将介绍如何在JSP中使用JavaMail API发送电子邮件。

环境

在开始之前,确保以下环境已设置:

  • Java Mail API已下载和安装。
发送电子邮件

我们需要使用Java类javax.mail.Sessionjavax.mail.Transport来发送电子邮件。首先,我们需要设置Session对象。

<%@ page import="javax.mail.*" %>
<%@ page import="javax.mail.internet.*"%>
<%
    String to = "recipient@example.com";//收件人邮箱地址
    String from = "sender@example.com";//发送者邮箱地址
    String host = "localhost";//SMTP服务器域名或IP地址

    Properties properties = System.getProperties();//获取系统的Properties对象
    properties.setProperty("mail.smtp.host", host);//设置SMTP服务器

    Session session = Session.getDefaultInstance(properties);//默认的Session对象
    try{
        MimeMessage message = new MimeMessage(session);//创建MimeMessage对象
        //设置From: 头部头字段
        message.setFrom(new InternetAddress(from));
        //设置To: 头部头字段
        message.addRecipient(Message.RecipientType.TO, new InternetAddress(to));
        //设置主题
        message.setSubject("Subject");//邮件主题
        //设置消息体
        message.setText("Hello World");//邮件内容

        Transport.send(message);//发送消息

        out.println("Sent message successfully....");//发送成功
    }catch (MessagingException mex) {
        mex.printStackTrace();//发送失败
    }
%>
代码说明
  • to:收件人邮箱地址。

  • from:发件人邮箱地址。

  • host:SMTP服务器域名或IP地址。在此示例中,我们设置为localhost。

  • System.getProperties():获取系统的Properties对象。

  • properties.setProperty("mail.smtp.host", host):设置SMTP服务器。我们将SMTP服务器设置为localhost。

  • Session.getDefaultInstance(properties):获取Session对象。我们使用默认Session对象。

  • MimeMessage:MIME(Multipurpose Internet Mail Extensions)消息。它代表一封邮件,并包含邮件的内容。

  • message.setFrom(new InternetAddress(from)):设置发件人。

  • message.addRecipient(Message.RecipientType.TO, new InternetAddress(to)):设置收件人。

  • message.setSubject("Subject"):设置邮件主题。

  • message.setText("Hello World"):设置邮件内容。

  • Transport.send(message):发送邮件。

总结

现在,我们已经学会了如何在JSP中使用JavaMail API发送电子邮件。使用上述代码片段,你可以向任何人发送电子邮件,只需要提供收件人和发件人电子邮件地址。