- 浏览: 83751 次
- 性别:
- 来自: 北京
最新评论
-
NeverGiveUpToChange:
好好好好好好好好好好好好好好
合并表格的jquery插件 -
riching:
static int calcMinCoins(in ...
最少硬币数问题 -
hujing101:
程序是错的,楼主好好检查下吧
堆排序java实现 -
gwpking8419:
做成一个完成的demo,发上来
合并表格的jquery插件 -
ww20042005:
看不太懂,有没有原始的js文件啊!
合并表格的jquery插件
package com.miaozhen.sitedna.util;
import java.util.Locale;
import java.util.Properties;
import java.util.ResourceBundle;
import javax.activation.DataHandler;
import javax.activation.FileDataSource;
import javax.mail.Address;
import javax.mail.BodyPart;
import javax.mail.Message;
import javax.mail.MessagingException;
import javax.mail.Multipart;
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 org.apache.log4j.Logger;
public class MailSend {
private static final Logger _logger = Logger.getLogger(MailSend.class.getName());
private MimeMessage mimeMsg;
private Session session;
private Properties props;
private String username = "";
private String password = "";
private Multipart mp;
public MailSend(String smtp) {
setSmtpHost(smtp);
createMimeMessage();
}
private void setSmtpHost(String hostName) {
System.out.println("mail.smtp.host = " + hostName);
if (props == null)
props = System.getProperties();
props.put("mail.smtp.host", hostName);
}
private boolean createMimeMessage()
{
try {
session = Session.getDefaultInstance(props, null);
}
catch (Exception e) {
return false;
}
try {
mimeMsg = new MimeMessage(session);
mp = new MimeMultipart();
return true;
}
catch (Exception e) {
return false;
}
}
/**
*
* @param need
* boolean
*
*/
private void setNeedAuth(boolean need) {
if (props == null)
props = System.getProperties();
if (need) {
props.put("mail.smtp.auth", "true");
} else {
props.put("mail.smtp.auth", "false");
}
}
/**
*
* @param name
* String
*
* @param pass
* String
*
*/
private void setNamePass(String name, String pass) {
username = name;
password = pass;
}
/**
*
* @param mailSubject
* String
*
* @return boolean
*
*/
private boolean setSubject(String mailSubject) {
try {
mimeMsg.setSubject(mailSubject);
return true;
}
catch (Exception e) {
return false;
}
}
/**
*
* @param mailBody
* String
*
*/
private boolean setBody(String mailBody) {
try {
BodyPart bp = new MimeBodyPart();
bp.setContent("" + mailBody, "text/html;charset=GB2312");
mp.addBodyPart(bp);
return true;
}
catch (Exception e) {
System.err.println("error:" + e);
return false;
}
}
/**
*
* @param name
* String
*
* @param pass
* String
*
*/
private boolean addFileAffix(String filename) {
try {
BodyPart bp = new MimeBodyPart();
FileDataSource fileds = new FileDataSource(filename);
bp.setDataHandler(new DataHandler(fileds));
bp.setFileName(fileds.getName());
mp.addBodyPart(bp);
return true;
} catch (MessagingException e) {
return false;
}
}
/**
*
* @param name
* String
*
* @param pass
* String
*
*/
private boolean setFrom(String from) {
try {
mimeMsg.setFrom(new InternetAddress(from));
return true;
} catch (Exception e) {
return false;
}
}
/**
*
* @param name
* String
*
* @param pass
* String
*
*/
private boolean setTo(String to) {
if (to == null)
return false;
try {
mimeMsg.setRecipients(Message.RecipientType.TO, InternetAddress
.parse(to));
return true;
} catch (Exception e) {
return false;
}
}
/**
*
* @param name
* String
*
* @param pass
* String
*
*/
private boolean setBcc(String bcc) {
if (bcc == null)
return false;
try {
mimeMsg.setRecipients(Message.RecipientType.BCC, InternetAddress
.parse(bcc));
return true;
}
catch (Exception e)
{
return false;
}
}
/**
*
* @param name
* String
*
* @param pass
* String
*
*/
private boolean setCopyTo(String copyto)
{
if (copyto == null)
return false;
try {
mimeMsg.setRecipients(Message.RecipientType.CC,
(Address[]) InternetAddress.parse(copyto));
return true;
}
catch (Exception e)
{
return false;
}
}
/**
*
* @param name
* String
*
* @param pass
* String
*
*/
private boolean sendout(boolean needAuth)
{
try {
mimeMsg.setContent(mp);
mimeMsg.saveChanges();
System.out.println("start send email....");
_logger.info("start send email....");
if (needAuth){
SmtpAuth sa = new SmtpAuth();
sa.setUserinfo(username, password);
System.out.println("------" + username + "------" + password);
_logger.info("------" + username + "------" + password);
session = Session.getInstance(props, sa);
}
session.setDebug(true);
Transport transport = session.getTransport("smtp");
transport.connect((String) props.get("mail.smtp.host"), username,
password);
transport.sendMessage(mimeMsg, mimeMsg.getAllRecipients());
System.out.println("sucess to send email");
_logger.info("sucess to send email");
transport.close();
return true;
} catch (Exception e)
{
System.err.println("error" + e);
_logger.info(e.getMessage());
_logger.info(e.getStackTrace().toString());
return false;
}
}
/**
*
* @param name
* String
*
* @param pass
* String
*
*/
private boolean sendout()
{
try {
mimeMsg.setContent(mp);
mimeMsg.saveChanges();
System.out.println("start send email....");
SmtpAuth sa = new SmtpAuth();
sa.setUserinfo(username, password);
System.out.println("------" + username + "------" + password);
Session mailSession = Session.getInstance(props, sa);
mailSession.setDebug(true);
Transport transport = mailSession.getTransport("smtp");
transport.connect((String) props.get("mail.smtp.host"), username,
password);
transport.sendMessage(mimeMsg, mimeMsg.getAllRecipients());
System.out.println("sucess to send email");
transport.close();
return true;
} catch (Exception e)
{
System.err.println("error" + e);
return false;
}
}
class SmtpAuth extends javax.mail.Authenticator {
private String user, password;
public void setUserinfo(String getuser, String getpassword) {
user = getuser;
password = getpassword;
}
protected javax.mail.PasswordAuthentication getPasswordAuthentication() {
return new javax.mail.PasswordAuthentication(user, password);
}
}
public static void main(String[] args) {
String mailbody = "<html>"
+ "<head>"
+ "<meta http-equiv=\"Content-Type\" content=\"text/html; charset=gb2312\" />"
+ "<title></title>"
+ "<style type=\"text/css\"></style></head>"
+ "<body>"
+ "<table width=\"769\" border=\"0\" cellpadding=\"0\" cellspacing=\"0\">"
+ "<tr><td width=\"769\" height=\"32\" valign=\"top\"><!--DWLayoutEmptyCell--> </td></tr>"
+ "<tr><td height=\"33\" valign=\"top\"></td></tr>"
+ "<tr><td height=\"34\" valign=\"top\"></td></tr>"
+ "<tr><td height=\"37\" valign=\"top\"></td></tr>"
+ "<tr><td height=\"35\" valign=\"top\"><a href=\"http://192.168.1.122:8080/eyunshu\">�½�</a></td></tr>"
+ "<tr><td height=\"38\" valign=\"top\"></td></tr>"
+ "<tr><td height=\"163\"> </td></tr>"
+ "</table></body></html>";
sendMail("xiaohaibin@miaozhen.com","ceshi自动发邮件",mailbody,"/home/supertool/sql.sql","/home/supertool/sql.sql");
// test1();
}
/**
*
* Just do it as this
*
*/
public static void test1() {
String mailbody = "rrwerewr";
MailSend themail = new MailSend("mail.miaozhen.com");
themail.setNeedAuth(true);
if (themail.setSubject("") == false)
return;
if (themail.setBody(mailbody) == false)
return;
if (themail.setTo("jiangping@supertool.net.cn") == false)
return;
if (themail.setFrom("supertool@miaozhen.com") == false)
return;
themail.setNamePass("supertool@miaozhen.com", "123456");
if (themail.sendout() == false)
return;
}
public static boolean sendMail(String to, String title, String body,String... affixFileNames) {
ResourceBundle resource = null;
resource = ResourceBundle.getBundle("mailserver", Locale.getDefault());
String smtphost = resource.getString("mail.smtp.host");
String from = resource.getString("mail.smtp.from");
String usr = resource.getString("mail.smtp.name");
String password = resource.getString("mail.smtp.password");
boolean needAuth = Boolean.parseBoolean(resource.getString("mail.smtp.auth"));
MailSend themail = new MailSend(smtphost);
themail.setNeedAuth(needAuth);
if (themail.setSubject(title) == false)
return false;
if (themail.setBody(body) == false)
return false;
if (themail.setTo(to) == false)
return false;
boolean hasAffix = affixFileNames!=null&&affixFileNames.length>0?true:false;
if(hasAffix){
for(int i=0; i<affixFileNames.length; i++){
String filename = affixFileNames[i];
themail.addFileAffix(filename);
}
}
//themail.setBcc(bcc);
if (themail.setFrom(from) == false)
return false;
themail.setNamePass(usr, password);
if (themail.sendout(needAuth) == false)
return false;
themail = null;
return true;
}
}
发表评论
-
hadoop客户端提交job的java代码
2013-08-28 09:25 899package com.xhb1.test; imp ... -
答复: 一道算法题,百思不得其解,求指导[非降序列找目标项,二分法变体]
2012-05-30 10:05 1010正确解看此链接 http://www.cnblogs.com ... -
基于倒排索引的缓存对象索引通用解决方案
2012-05-28 13:50 1401一个给javabean列表建立倒排索引的通用类,主要可用于给缓 ... -
有环链表查找环
2012-03-01 14:51 2150有环链表如何高效的判断是否有环,以及在何处产生环? 采用2个 ... -
jboss下spring的jms配置
2012-02-14 15:36 24871。首先配置jboss的jbossmq,启动jboss(启动j ... -
堆排序java实现
2011-10-16 23:10 4618/** * 大根堆,从小到大排序 * * @au ... -
动态规划算法学习
2011-10-06 15:46 999问题及分析: 一 ... -
poiutil
2010-08-06 10:17 2012package com.miaozhen.sitedna.po ... -
jni带包java文件编译
2010-06-29 15:01 1377javah -classpath /home/aa/works ... -
字符编码学习笔记
2010-02-25 18:24 1316unicode: 也叫万国码,是计算机领域的一种业界标准,它是 ... -
大家如何看待中文变量名与方法名
2009-06-20 14:50 3072其实还是最近才知道原来很多语言都是支持中文变量名与方法名的,感 ... -
http协议学习笔记
2009-03-13 14:16 2377http协议(超文 ... -
初学责任链模式
2009-01-01 11:31 888初学设计模式,写的一个责任链模式,请大家看看有没什么问题啊. ...
相关推荐
【MailSend】是一款用于发送邮件的工具,其源码公开,可以帮助开发者或用户自定义邮件发送功能。在深入探讨MailSend之前,我们首先需要理解电子邮件的工作原理和SMTP(Simple Mail Transfer Protocol)协议,这是...
:: p-mailsend_v4.0 :: :: :: :: Code by : vkill :: :: Thanks : bjsh,est,lxmxm... :: :: 出 处 : http://www.vkill.net http://bbs.cn-dos.net :: :: 功 能 : 命令行邮件发送程序(群发\多附件\匿名) :: :: ...
mailsend, 通过 命令行 通过SMTP发送邮件的程序 mailsend-v1.19mailsend 是一个简单的命令行 程序,可以通过 SMTP 协议发送邮件。 很久以前,我需要在联网的Windows 机器中发送一个程序的提醒邮件,但是找不到这样...
资源分类:Python库 所属语言:Python 资源全名:mailsend-0.1.5.tar.gz 资源来源:官方 安装方法:https://lanzao.blog.csdn.net/article/details/101784059
《邮件发送程序——mailsend(daiyanzheng)详解》 在信息技术日益发达的今天,邮件已经成为日常工作中不可或缺的通信工具。"mailsend(daiyanzheng)" 是一个专为设计人员打造的带验证功能的邮件发送程序,它提供了一...
在“MailSend”这个项目中,开发者可能已经实现了这样的功能,通过C#的Socket类直接操作SMTP协议,构建了一个邮件发送客户端。用户可以通过这个客户端程序发送自定义的邮件,而不受内置SMTP客户端的限制。这样的工具...
本文将详细讲解如何使用JavaScript实现简单的邮件发送功能,主要围绕"mailsend"项目进行介绍。 首先,JavaScript是一种广泛使用的前端编程语言,但通常来说,由于浏览器的安全限制,JavaScript直接在客户端发送邮件...
标题 "p-mailsend" 描述的是一个在DOS环境下用于发送邮件的工具,它支持自定义邮件的主题、收件人以及正文,并且可以自动压缩附件进行发送。这个工具可能特别适用于那些需要在命令行界面中操作或者在不支持图形用户...
**邮件发送工具mailsend详解** `mailsend`是一款小巧而强大的命令行工具,它使得通过SMTP(Simple Mail Transfer Protocol)发送邮件变得极其简单。这款工具适用于程序员或系统管理员,尤其在自动化任务中需要发送...
经过修改和测试,已经做出类似公式@mailsend的lotusscript代码。 已经用在多个程序中!
c#实现的基于winform邮件群发程序,采用的access数据库,可发多个附件,多个收件人邮箱和发件人邮箱可存入数据库,使用时可以自动提出
邮件客户端,C#实现,核心代码来自国外网站。
这次的VC++课程设计,我选择了制作一个操作简单,又可以实现最基本的电子邮件发送功能的工具。这次C++课程设计作业,代码实现采用VC++,界面用MFC实现,邮件发送功能。已通过老师答辩,工程文件亲测可用。
这个是基于c# 邮件发送,是毕设题目。邮件方面功能比较齐全。
电子邮件在当今社会中扮演了一...MailSend命名空间是我整个程序的核心。它包括两个类。在SmtpMail的类中包含了一个SendMail的方法,它从底层详细地实现了和服务器的交互操作。你既可以用它发送一个纯文本邮件,也可以发
在MATLAB开发中,"matlab开发-sendTxtexe"是一个项目,其主要目的是利用`mailsend.exe`程序从MATLAB环境中向手机发送文本信息。这个功能对于自动化通知、数据报告或者远程控制等应用场景非常有用。下面我们将深入...
2. **`mailsend`表的全表扫描**:更严重的问题在于,`mailsend`表在查询条件下未能有效利用索引,导致了全表扫描,极大地消耗了系统资源。 #### 索引优化措施 针对上述问题,采取了以下优化措施: 1. **创建索引*...
`Initialize`函数负责初始化Winsock环境,而`MailSend`则执行SMTP协议流程,通过socket发送邮件指令和内容。 【实验步骤】 1. 创建VC6工程,设置好包含和库路径。 2. 编写SMTP协议相关的函数和类,实现邮件发送逻辑...
`mailSend`是`DatagramSocket`实例,通过`send`方法将数据包发送出去。 在服务器端(Server.java): 1. 【代码 1】:`new DatagramSocket(1234);` 这行代码创建了一个`DatagramSocket`,监听在端口`1234`,准备...