java邮件模板代码 开发邮件模板

java邮箱发送报错

package com.gpt.util.email;

十多年的牡丹江网站建设经验,针对设计、前端、开发、售后、文案、推广等六对一服务,响应快,48小时及时工作处理。全网营销推广的优势是能够根据用户设备显示端的尺寸不同,自动调整牡丹江建站的显示方式,使网站能够适用不同显示终端,在浏览器中调整网站的宽度,无论在任何一种浏览器上浏览网站,都能展现优雅布局与设计,从而大程度地提升浏览体验。成都创新互联从事“牡丹江网站设计”,“牡丹江网站推广”以来,每个客户项目都认真落实执行。

import java.io.FileOutputStream;

import java.util.List;

import java.util.Properties;

import javax.activation.DataHandler;

import javax.activation.FileDataSource;

import javax.mail.Message;

import javax.mail.Session;

import javax.mail.Transport;

import javax.mail.internet.InternetAddress;

import javax.mail.internet.MimeBodyPart;

import javax.mail.internet.MimeMessage;

import javax.mail.internet.MimeMultipart;

import com.gpt.util.PropertiesUtil;

/**

*

* Java邮件发送类,使用javaMail类进行邮件发送

* by CKQ

* */

public class MailUtil {

//邮件服务器

private static String mail_host=(String)PropertiesUtil.getMap().get("mail_host");//"smtp.yeah.net";

//邮件服务器端口

private static int port=Integer.valueOf((String)PropertiesUtil.getMap().get("mail_port"));//25;

//邮件协议

private static String mail_transport_protocol=(String)PropertiesUtil.getMap().get("mail_transport_protocol");//"smtp";

//需要smtp验证

private static String mail_smtp_auth=(String)PropertiesUtil.getMap().get("mail_smtp_auth");//"true";

//发送人用户名

private static String username=(String)PropertiesUtil.getMap().get("mail_username");//"wujianhui321@yeah.net";

//发送人密码

private static String password=(String)PropertiesUtil.getMap().get("mail_password");//"xxxxxx";

//发送纯文本邮件

public static boolean sendSimpleMail(String from,String to,String subject,String content) {

boolean result=true;

try {

Properties prop=new Properties();

prop.setProperty("mail.host", mail_host);

prop.setProperty("mail.transport.protocol", mail_transport_protocol);

prop.setProperty("mail.smtp.auth", mail_smtp_auth);

//经验证qq邮箱需要添加一下两条记录,否则失败,其他暂时不知道,这是安全协议所需要的类 add by CKQ 2017-7-19

prop.setProperty("mail.smtp.socketFactory.class", "javax.net.ssl.SSLSocketFactory");

prop.setProperty("mail.smtp.socketFactory.port", String.valueOf(port));

Session session=Session.getInstance(prop);

//设置为debug模式 ,生产环境应该关掉

session.setDebug(true);

//获得transport对象

Transport ts=session.getTransport();

//连上邮件服务器

ts.connect(mail_host,port, username,password);

//创建邮件

MimeMessage message=new MimeMessage(session);

//设置发送人

message.setFrom(new InternetAddress(from));

//设置接收人

message.setRecipient(javax.mail.Message.RecipientType.TO, new InternetAddress(to));

//设置主题

message.setSubject(subject);

//设置内容

message.setContent(content,"text/html;charset=UTF-8");

//发送邮件

ts.sendMessage(message, message.getAllRecipients());

//关闭连接

ts.close();

} catch (Exception e) {

e.printStackTrace();

result=false;

}

return result;

}

//发送带图片的邮件

public static boolean sendImageMail(String from,String to,String subject,String absoluteImagePath) throws Exception{

boolean result=true;

try {

//获取图片后缀

String suffix=absoluteImagePath.substring(absoluteImagePath.lastIndexOf(".")+1,absoluteImagePath.length()) ;

//定义contentId,图片到达邮件服务器后会有一个contentId,然后html中可以引用这个contentId显示该图片。

String contentId="1."+suffix;

//内容模板

String content="带图片的邮件img src='cid:"+contentId+"'/";

Properties prop=new Properties();

prop.setProperty("mail.host", mail_host);

prop.setProperty("mail.transport.protocol", mail_transport_protocol);

prop.setProperty("mail.smtp.auth", mail_smtp_auth);

Session session=Session.getInstance(prop);

//设置为debug模式 ,生产环境应该关掉

session.setDebug(true);

//获得transport对象

Transport ts=session.getTransport();

//连上邮件服务器

ts.connect(mail_host,port, username,password);

//创建邮件

MimeMessage message=new MimeMessage(session);

//设置发送人

message.setFrom(new InternetAddress(from));

//设置接收人

message.setRecipient(javax.mail.Message.RecipientType.TO, new InternetAddress(to));

//设置标题

message.setSubject(subject);

//创建正文

MimeBodyPart text=new MimeBodyPart();

//设置内容

text.setContent(content,"text/html;charset=UTF8");

//创建一个图片

MimeBodyPart image=new MimeBodyPart();

//从本地absoluteImagePath文件读取

DataHandler dh=new DataHandler(new FileDataSource(absoluteImagePath));

image.setDataHandler(dh);

//设置图片的contentId

image.setContentID(contentId);

//创建容器描述数据关系

javax.mail.internet.MimeMultipart mm=new MimeMultipart();

//容器添加内容

mm.addBodyPart(text);

//容器添加图片

mm.addBodyPart(image);

mm.setSubType("related");

message.setContent(mm);

message.saveChanges();

//存储创建的邮件

message.writeTo(new FileOutputStream("F:/imagemail.eml"));

ts.sendMessage(message, message.getAllRecipients());

ts.close();

} catch (Exception e) {

e.printStackTrace();

result=false;

}

return result;

}

//发送带附件的邮件

public static boolean sendAttachMail(String from,String to,String subject,String content,ListString absoluteFilePathList) throws Exception{

boolean result=true;

try {

Properties prop=new Properties();

prop.setProperty("mail.host", mail_host);

prop.setProperty("mail.transport.protocol", mail_transport_protocol);

prop.setProperty("mail.smtp.auth", mail_smtp_auth);

Session session=Session.getInstance(prop);

//设置为debug模式 ,生产环境应该关掉

//session.setDebug(true);

//获得transport对象

Transport ts=session.getTransport();

//连接邮件服务器

ts.connect(mail_host,port, username,password);

//创建邮件

MimeMessage message=new MimeMessage(session);

//设置发送人

message.setFrom(new InternetAddress(from));

//设置接收人

message.setRecipient(Message.RecipientType.TO, new InternetAddress(to));

//设置主题

message.setSubject(subject);

//创建正文

MimeBodyPart text=new MimeBodyPart();

//设置正文内容

text.setContent(content,"text/html;charset=UTF-8");

//创建容器描述关系

MimeMultipart mp=new MimeMultipart();

//添加正文

mp.addBodyPart(text);

for(int i=0;iabsoluteFilePathList.size();i++){

//创建附件

MimeBodyPart attach=new MimeBodyPart();

DataHandler dh=new DataHandler(new FileDataSource(absoluteFilePathList.get(i)));

attach.setDataHandler(dh);

attach.setFileName(dh.getName());

//容器添加附件

mp.addBodyPart(attach);

}

mp.setSubType("mixed");

message.setContent(mp);

message.saveChanges();

//保存邮件至F盘

message.writeTo(new FileOutputStream("F:/attachMail.eml"));

ts.sendMessage(message, message.getAllRecipients());

ts.close();

} catch (Exception e) {

e.printStackTrace();

result=false;

}

return result;

}

}

jelly脚本怎么写java代码

从Jenkins(Hudson)2.9版本开始我们可以使用Jelly脚本。Jelly脚本跟Hudson的API挂钩,能获得你想要的任何信息,所以它很强大。插件有两个打包后的Jelly脚本,当然你也可以自定义(脚本)。

关于插件中默认的两个Jelly脚本:一个用来设计HTML格式邮件,另一个则是定义TEXT格式邮件。通过上面的截图看到它们的样子。你能通过使用模板参数指定插件调用哪一个脚本。它们的使用方法如下:

文本格式: ${JELLY_SCRIPT,template=”text”}

HTML格式:  ${JELLY_SCRIPT,template=”html”}

问一下,Java里的这个getRandString()函数是什么意思,我敲代码的时候出错了

我服了,我把源码贴出来吧.....

public class Client {

//发送账单的数量,这个值是从数据库中获得

private static int MAX_COUNT = 6;

public static void main(String[] args) {

//模拟发送邮件

int i=0;

//把模板定义出来,这个是从数据库中获得

Mail mail = new Mail(new AdvTemplate());

mail.setTail("XX银行版权所有");

while(iMAX_COUNT){              

//以下是每封邮件不同的地方

mail.setAppellation(getRandString(5)+" 先生(女士)");

mail.setReceiver(getRandString(5) + "@" + getRandString(8)+".com"); 

//然后发送邮件

sendMail(mail);

i++;

}

}   

//发送邮件

public static void sendMail(Mail mail){

System.out.println("标题:"+mail.getSubject() + "\t收件人:"+mail.getReceiver()+"\t....发送成功!");

}   

//获得指定长度的随机字符串

public static String getRandString(int maxLength){

String source ="abcdefghijklmnopqrskuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ";

StringBuffer sb = new StringBuffer();

Random rand = new Random();

for(int i=0;imaxLength;i++){

sb.append(source.charAt(rand.nextInt(source.length())));

}

return sb.toString();       

}

}


分享标题:java邮件模板代码 开发邮件模板
标题路径:http://csdahua.cn/article/docshjo.html
扫二维码与项目经理沟通

我们在微信上24小时期待你的声音

解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流