JFinal项目发送邮件——jfinal-mail-plugin

内容预览:
  • ”,只需简单的2行代码即可实现邮件发送!为您节约更多时间,去陪恋人、...~
  • 码云源码地址:https://gitee.com/xiyoufang/jfinal-mail-plugin 以上是...~
  • 在pom中添加jfinal-mail-plugin: <dependency> <groupId>c...~

JFianl框架:

JFinal 是基于 Java 语言的极速 WEB + ORM 框架,其核心设计目标是开发迅速、代码量少、学习简单、功能强大、轻量级、易扩展、Restful。在拥有Java语言所有优势的同时再拥有ruby、python、php等动态语言的开发效率!为您节约更多时间,去陪恋人、家人和朋友 :)

JFinal框架有自己的邮件发送插件——jfinal-mail-plugin,支持发送普通邮件,模板邮件,还支持发送附件,jfinal-mail-plugin还可以配置多邮件发送数据源。

JFinal项目发送邮件插件:jfinal-mail-plugin

JFinal官方地址:http://www.jfinal.com/project/33

jfinal-mail-plugin是jfinal的一个邮件发送插件,支持发送普通邮件、与附件邮件,邮件内容支持通过模板生成,同时还支持多个邮件发送源,她继承了Jfinal核心目标“开发迅速,代码量少,学习简单。。。”,只需简单的2行代码即可实现邮件发送!为您节约更多时间,去陪恋人、家人和朋友 :) ,核心代码通过spring-context-support包的邮件模块移植,JavaMailSender对象如何发送邮件可直接参照Spring的邮件发送文档。

码云源码地址:https://gitee.com/xiyoufang/jfinal-mail-plugin

以上是该项目的源码,使用时直接调用就可以。

使用方法:

和使用JFinal一样,只需要在pom文件中引入jfinal-mail-plugin即可。

在pom中添加jfinal-mail-plugin:

    <dependency>
<groupId>cn.fsdev</groupId>
<artifactId>jfinal-mail-plugin</artifactId>
<version>3.0</version>
</dependency>

添加邮件配置文件:

#邮箱HOST
host=smtp.qq.com
#协议
protocol=smtp
#端口
port=465
#发送邮箱
username=**@qq.com
#密码
password=**
#权限认证
mail.smtp.auth=true
#超时时间
mail.smtp.timeout=5000
#是否是ssl
mail.smtp.ssl.enable=true

项目启动时启动jfinal-mail-plugin插件:

me.add(new MailPlugin(PropKit.use("mail.properties").getProperties()));

发送普通邮件:

    public void senmail(){
System.out.println(
"发送邮件:");
try{
MailKit.send(
"**@qq.com", null, "邮件标题", "邮件内容");
System.out.println(
"成功");
}
catch (Exception e){
System.out.println(
"失败");
e.printStackTrace();
}
}

我们可以看到邮件发送工具 MailKit 的代码:

package com.jfplugin.mail;

import java.io.File;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

import com.jfplugin.mail.core.JavaMailSender;

/**
* 发送邮件工具
*
@author farmer
*
*/
public class MailKit {

static Map<String, MailPro> proMap = new HashMap<String, MailPro>();

static MailPro mailPro = null;

/**
*
*
@param configName
*
@param mailPro
*/
static void init(String configName , MailPro mailPro){
if(proMap.get(configName) != null){
throw new RuntimeException(configName+"配置的Mail已经存在!");
}
proMap.put(configName, mailPro);
if(MailPlugin.MAIN_CONFIG.equals(configName)){
MailKit.mailPro
= mailPro;
}
}

/**
*
*
@param configName
*
@return
*/
public static MailPro use(String configName){
MailPro mailPro
= proMap.get(configName);
if(mailPro == null){
throw new RuntimeException(configName+"配置的Mail不存在!");
}
return mailPro;
}

/**
* 发送邮件
*
@param to
* 收件人
*
@param cc
* 发件人
*
@param subject
* 主题
*
@param text
* 内容
*/
public static void send(String to,List<String> cc,String subject,String text){
mailPro.send(to, cc, subject, text);
}

/**
* 发送邮件
*
@param to
* 收件人
*
@param cc
* 发件人
*
@param subject
* 主题
*
@param text
* 内容
*
@param attachments
* 附件
*
*/
public static void send(String to,List<String> cc,String subject,String text,List<File> attachments){
mailPro.send(to, cc, subject, text,attachments);
}

/**
*
*
@param to
*
@param cc
*
@param subject
*
@param viewpath
*
@param dataMap
*/
public static void send(String to,List<String> cc ,String subject,String viewpath ,Map<String, Object> dataMap){
mailPro.send(to, cc, subject, viewpath , dataMap);
}

/**
*
*
@param to
*
@param cc
*
@param subject
*
@param viewpath
*
@param dataMap
*
@param attachments
*/
public static void send(String to,List<String> cc ,String subject,String viewpath ,Map<String, Object> dataMap,List<File> attachments){
mailPro.send(to, cc, subject, viewpath , dataMap , attachments);
}

/**
* 获取JavaMailSender
*
@return
* 当前实例的JavaMailSender,用来定制化更复杂的邮件发送需求
*/
public static JavaMailSender getMailSender(){
return mailPro.getMailSender();
}

}

从 MailKit 的代码中我们可以看到他的多种形式的邮件发送,只是参数的不同。

jfinal-mail-plugin配置多邮件数据源:

不同的邮件源写在不同的properties配置文件中。

然后在启动插件时指定发送源:

me.add(new MailPlugin(“mail2”,PropKit.use(“mail2.properties”).getProperties()));

最后在MailKit发送邮件时指定发送源:

MailKit.use(“mail2”).send(…);

 

和大佬一起学习网络安全知识

以上就是:JFinal项目发送邮件——jfinal-mail-plugin 的全部内容

本站部分内容来源于互联网和用户投稿,如有侵权请联系我们删除,谢谢^^
Email:[email protected]


0 条回复 A 作者 M 管理员
    所有的伟大,都源于一个勇敢的开始!
欢迎您,新朋友,感谢参与互动!欢迎您 {{author}},您在本站有{{commentsCount}}条评论