当前位置: 首页 > 后端技术 > Java

发送邮件

时间:2023-04-02 10:10:03 Java

Java发送邮件使用Java应用程序发送电子邮件非常简单,但首先您应该在计算机上安装JavaMailAPI和JavaActivationFramework(JAF)。您可以从Java网站下载最新版本的JavaMail,打开页面右侧的下载链接,点击下载。您可以从Java网站下载最新版本的JAF(版本1.1.1)。您也可以使用本站提供的下载链接:JavaMailmail.jar1.4.5JAF(version1.1.1)activation.jar下载并解压这些文件,在新建的顶层目录下会发现这两个应用程序有一些jar文件。您需要将mail.jar和activation.jar文件添加到CLASSPATH。如果使用第三方邮件服务器如QQ的SMTP服务器,可以查看文末用户认证的完整示例。发送简单的电子邮件以下是发送简单电子邮件的示例。假设您的本地主机已经连接到网络。SendEmail.java文件代码://文件名SendEmail.javaimportjava.util.*;importjavax.mail.*;importjavax.mail.internet.*;importjavax.activation.*;publicclassSendEmail{publicstaticvoidmain(String[]args){//收件人的电子邮件地址Stringto="abcd@gmail.com";//发件人的电子邮件地址Stringfrom="web@gmail.com";//指定发送邮件的主机ForlocalhostStringhost="localhost";//获取系统属性Propertiesproperties=System.getProperties();//设置邮件服务器properties.setProperty("mail.smtp.host",host);//获取默认会话对象Sessionsession=Session.getDefaultInstance(properties);try{//创建一个默认的MimeMessage对象MimeMessagemessage=newMimeMessage(session);//设置发件人:头字段message.setFrom(newInternetAddress(from));//设置为:头字段message.addRecipient(Message.RecipientType.TO,newInternetAddress(to));//设置主题:标题字段message.setSubject("ThisistheSubjectLine!");//设置消息正文message.setText("Thisisactualmessage");//发送消息Transport.send(message);System.out.println("Sentmessagesuccessfully...");}catch(MessagingExceptionmex){mex.printStackTrace();}}}compileand运行这个程序来发送一个简单的E-mail:$javaSendEmailSentmessagesuccessfully....如果你想给多个收件人发送一封电子邮件,使用下面的方法来指定多个收件人ID:voidaddRecipients(Message.RecipientTypetype,Address[]addresses)throwsMessagingException下面是对参数的说明:type:可以设置为TO,CC或者BCC,其中CC代表CC,BCC代表BCC例子:Message.RecipientType.TOaddresses:这是一个电子邮件ID数组。当指定电子邮件ID时,您将需要使用InternetAddress()方法。发送HTML电子邮件下面是发送HTML电子邮件的示例。假设您的本地主机已连接到网络。它与前面的示例非常相似,只是我们将使用setContent()方法通过传递第二个参数“text/html”来指定要发送的HTML内容来设置内容。SendHTMLEmail.java文件代码://文件名SendHTMLEmail.javaimportjava.util.*;importjavax.mail.*;importjavax.mail.internet.*;importjavax.activation.*;publicclassSendHTMLEmail{publicstaticvoidmain(String[]args){//收件人的电子邮件地址Stringto="abcd@gmail.com";//发件人的电子邮件地址Stringfrom="web@gmail.com";//指定发送邮件的主机ForlocalhostStringhost="localhost";//获取系统属性Propertiesproperties=System.getProperties();//设置邮件服务器properties.setProperty("mail.smtp.host",host);//获取默认会话对象。Sessionsession=Session.getDefaultInstance(属性);try{//创建一个默认的MimeMessage对象。MimeMessage消息=newMimeMessage(session);//设置发件人:头字段message.setFrom(newInternetAddress(from));//设置为:头字段message.addRecipient(Message.RecipientType.TO,newInternetAddress(to));//设置主题:标题字段message.setSubject("ThisistheSubjectLine!");//发送HTML消息,可以插入html标签message.setContent("

Thisisactualmessage

","text/html");//发送消息Transport.send(message);System.out.println("发送消息成功......");}catch(MessagingExceptionmex){mex.printStackTrace();}}}编译并运行此程序以发送HTML电子邮件:$javaSendHTMLEmailSentmessagesuccessfully....