Jmail发送邮件工具类分享

好久没更新博客了,实在是拖延症严重啊,好可怕,先更新个工具类吧,之前写的发送邮件的小工具,话不多说上代码

import lombok.extern.slf4j.Slf4j;

import java.util.Properties;

import javax.mail.*;
import javax.mail.internet.AddressException;
import javax.mail.internet.InternetAddress;
import javax.mail.internet.MimeMessage;

/**
 * <b>发送邮件工具类</b><br/>
 * <b>Create on:</b>2016/10/9 16:14<br/>
 *
 * @author : liud<br/>
 */
@Slf4j
public class SendMailUtil {

  /**
   * 发送邮件
   * @param smtpHost
   * @param fromUser
   * @param fromUserPassword
   * @param emailPort
   * @param toUser
   * @param subject
   * @param messageText
   */
  public static boolean doSendEmail(String smtpHost, final String fromUser,
                final String fromUserPassword, String userName, String emailPort, String toUser, String subject,
                String messageText) throws Exception {
    boolean flag = false;
    try {
      Properties props = new Properties();
      props.put("mail.smtp.host", smtpHost);
      props.put("mail.smtp.port", emailPort);
      props.put("mail.smtp.auth", "true");
      Session session = Session.getDefaultInstance(props, new Authenticator(){
        protected PasswordAuthentication getPasswordAuthentication() {
          return new PasswordAuthentication(fromUser, fromUserPassword);
        }});
      MimeMessage message = new MimeMessage(session);
      // 发件人
      InternetAddress from = new InternetAddress(fromUser);
      message.setFrom(from);
      // 收件人
      InternetAddress to = new InternetAddress(toUser);
      message.setRecipient(Message.RecipientType.TO, to);
      // 邮件标题
      message.setSubject(subject);
      // 邮件内容,也可以使纯文本"text/plain"
      message.setContent(messageText, "text/html;charset=GBK");
      message.saveChanges();
      Transport transport = session.getTransport("smtp");
      // smtp验证,就是你用来发邮件的邮箱用户名密码
      transport.connect(smtpHost, userName, fromUserPassword);
      // 发送
      transport.sendMessage(message, message.getAllRecipients());
      transport.close();
      flag = true;
    } catch (AddressException e) {
      log.error("地址异常:{}", e);
      throw e;
    } catch (MessagingException e) {
      log.error("消息异常:{}", e);
      throw e;
    } catch (Exception e) {
      log.error("系统异常:{}", e);
      throw e;
    }

    return flag;
  }
}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。

(0)

相关推荐

  • Jmail组件发送邮件之绝对能用的函数

    大致如下: 1,POP3对象,是对POP3邮件接收服务器的操作.2,Messages对象,是有关邮件集合的对象.3,Message对象,是有关邮件的对象,其是Jmail组件最常用的对象,能发送邮件信息,也能接收邮件信息.4,Header对象,是与邮件头相关的对象.5,Recipients对象,是有关接收邮件集合的对象.6,Recipient对象,是有关接收邮件的对象.7,Attachments对象,是有关邮件附件集合的对象.8,Attachment对象,是有关邮件附件的对象.9,MailMerg

  • Jmail 图文安装教程 asp在线发送邮件组件

    常用组件主要包括Aspjpeg.Jmail.LyfUpload.动易.ISAPI_ReWrite等,本文就仅说这5种,其他类型组件可以根据需要安装,安装方法以此类推. 下载Jmail,现在免费版本的最高版是Jmail4.5,点击后面的链接下载:点此下载JMail4.5: 下载解压到任意目录,或者直接执行JMail45_free.msi: 执行后开始安装,出现安装界面如下图点击Next先选择"I accept the license agreement" ,再点击Next  出于安全考虑

  • asp+JMAIL实现发送邮件

    本文利用asp和JMAIL实现了发送邮件,大家是不是很好奇这到底是怎么实现的呐,和小编一起一探究竟吧! Global.asa文件 什么是Global.asa 文件?它其实是一个可选文件,程序编写者可以在该文 件中指定事件脚本,并声明具有会话和应用程序作用域的对象.该文件的内容不是用来给用户显示的,而是用来存储事件信息和由应用程序全局使用的对象.该 文件的名称必须是 Global.asa 且必须存放在应用程序的根目录中.每个应用程序只能有一个 Global.asa 文件.内容如下: <script

  • .net jMail邮件发送(含抄送、密送、多发、日志记录)实例代码

    jmail是一个第三方邮件操作组件,通常位于web服务器端,实现收邮件及发邮件功能(客户端用Foxmail这类就很好了).可以利用它轻松实现发邮件.抄送.密送.多发.日志记录及收邮件功能.本章要讲的,就是:发邮件.抄送.密送.多发.日志记录. 一.组件准备下载JMail44_pro并安装(记下安装路径) 找到安装路径,将其中的jmail.dll复制到项目中 二.核心发送代码新建MailAPI.cs,并输入以下代码 复制代码 代码如下: using System;using System.Coll

  • Jmail发送邮件与带附件乱码解决办法分享

    Jamil发送邮件的具体用法: 首先,我们要先下载Jamil.dll的组件,然后添加引用using jmail,然后再本机或者服务器上注册一下 将jmail.dll拷贝到服务器的system32目录下,开始-运行-cmd-输入regsvr32 jmail.dll,注册成功,然后写代码 代码如下(方法) 复制代码 代码如下: using jmail;    protected void sendMail(String sender, String senderMail, String receiv

  • asp jmail发邮件 详细解析第1/2页

    发个个比较详细的asp与jmail 实现发送邮件的代码,前一段时间有发过一个简单的JMAIL邮件发邮件的代码,今天就把这个代码做一个具体的注解,并增加了另外两个格式的代码,并举几个简单的例子: 首先是jmail.smtpmail的核心代码:   复制代码 代码如下: <%   Set jmail = Server.CreateObject("JMAIL.SMTPMail") '创建一个JMAIL对象   jmail.silent = true 'JMAIL不会抛出例外错误,返回的

  • ASP用JMail、CDO发送邮件

    前一段时间有发过一个简单的JMAIL邮件发邮件的代码,今天就把这个代码做一个具体的注解,并增加了另外两个格式的代码,并举几个简单的例子: 首先是jmail.smtpmail的核心代码:  程序代码 <%   Set jmail = Server.CreateObject("JMAIL.SMTPMail")   '创建一个JMAIL对象   jmail.silent = true   'JMAIL不会抛出例外错误,返回的值为FALSE跟TRUE   jmail.logging = 

  • Jmail发邮件的例子

    在Asp程序中用Jmail发邮件的比较多,主要是因为多数虚拟主机支持他,其它的支持的较少. 下面是一个Jmail发邮件的例子代码:  如果您在自己的机器上试,请下载 Jmail.dll ,下载解压后,双击Setup.bat 即可完成安装!  复制代码 代码如下: <% On error resume next Dim JMail, contentId Set JMail = Server.CreateObject("JMail.Message")  JMail.Charset =

  • Jmail发送邮件工具类分享

    好久没更新博客了,实在是拖延症严重啊,好可怕,先更新个工具类吧,之前写的发送邮件的小工具,话不多说上代码 import lombok.extern.slf4j.Slf4j; import java.util.Properties; import javax.mail.*; import javax.mail.internet.AddressException; import javax.mail.internet.InternetAddress; import javax.mail.intern

  • Spring框架JavaMailSender发送邮件工具类详解

    本文实例为大家分享了Spring框架JavaMailSender发送邮件工具类,供大家参考,具体内容如下 需要用到的jar包: 下面是发送工具类代码: package com.test.email; import org.springframework.core.io.FileSystemResource; import org.springframework.mail.SimpleMailMessage; import org.springframework.mail.javamail.Jav

  • 史上最全Java8日期时间工具类(分享)

    这是我总结的Java8日期工具类,应该是比较全面的,满足日常开发绝大部分需求,分享给大家,有错误之处,还望大神指教. /** * Java8日期时间工具类 * * @author JourWon * @date 2020/12/13 */ public class LocalDateUtils { /** * 显示年月日时分秒,例如 2015-08-11 09:51:53. */ public static final String DATETIME_PATTERN = "yyyy-MM-dd

  • React Native时间转换格式工具类分享

    本文实例为大家分享了React Native时间转换格式工具类,供大家参考,具体内容如下 class DateUtil{ /** * 例如:2017-06-28 10:48:46转成date类, * 可把- replace成/ * @param dateString * @return Date */ static parserDateString(dateString){ if(dateString){ let regEx = new RegExp("\\-","gi&qu

  • React Native验证码倒计时工具类分享

    本文实例为大家分享了React Native验证码倒计时工具类的具体代码,供大家参考,具体内容如下 因为以前直接用定时器,没去计算当前的时候,每次退出程序的时候,定时器一直不走,这个工具类简单的解决程序退出后台,定时器不走的bug,那么,直接上代码咯~~ /** * Created by zhuang.haipeng on 2017.9.11 * * 广告倒计时,验证码倒计时工具类 * * 用法: //60 * 1000 为60秒 , 60 * 60 * 100 为60分钟 ... * let

  • Android Zip解压缩工具类分享

    本文实例为大家分享了Android Zip解压缩工具类的具体代码,供大家参考,具体内容如下 package com.example.zip.commons.utils; import android.util.Log; import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.InputStream; import java.util.ArrayList

  • java汉字转拼音工具类分享

    本文实例为大家分享了java汉字转拼音工具类的具体代码,供大家参考,具体内容如下 import com.google.common.base.Strings; import net.sourceforge.pinyin4j.PinyinHelper; import net.sourceforge.pinyin4j.format.HanyuPinyinOutputFormat; import net.sourceforge.pinyin4j.format.HanyuPinyinToneType;

  • java文件读写工具类分享

    本文实例为大家分享了java文件读写工具类的具体代码,供大家参考,具体内容如下 import java.io.BufferedInputStream; import java.io.BufferedOutputStream; import java.io.BufferedReader; import java.io.File; import java.io.FileInputStream; import java.io.FileReader; import java.io.FileWriter;

  • 一个Java配置文件加密解密工具类分享

    常见的如: 数据库用户密码,短信平台用户密码,系统间校验的固定密码等.本工具类参考了 <Spring.3.x企业应用开发实战>一书 5.3节的实现.完整代码与注释信息如下: 复制代码 代码如下: package com.cncounter.util.comm; import java.security.Key;import java.security.SecureRandom; import javax.crypto.Cipher;import javax.crypto.KeyGenerato

  • 各种格式的编码解码工具类分享(hex解码 base64编码)

    复制代码 代码如下: import java.io.UnsupportedEncodingException;import java.net.URLDecoder;import java.net.URLEncoder; import org.apache.commons.codec.DecoderException;import org.apache.commons.codec.binary.Base64;import org.apache.commons.codec.binary.Hex;im

随机推荐