当前位置: 首页 > wzjs >正文

门户网站做吗营销型网站建设套餐

门户网站做吗,营销型网站建设套餐,招聘网站数据分析怎么做,拱墅网站建设EmailSenderHtmlV1 是读取配置文件《批量发送邮件.xlsx》,配置sheet获取 发件人邮箱 邮箱账号 口令,发送excel数据sheet获取收件人邮箱 抄送人邮箱 邮件标题 第N行开始(N>1,N0默认表头) 第M行结束(M>1,M0默认表头) 附件文件夹…

EmailSenderHtmlV1 是读取配置文件《批量发送邮件.xlsx》,配置sheet获取 发件人邮箱    邮箱账号    口令,发送excel数据sheet获取收件人邮箱    抄送人邮箱    邮件标题    第N行开始(N>=1,N=0默认表头)    第M行结束(M>=1,M=0默认表头)    附件文件夹    附件名,同时发送excel数据内容详情sheet配合发送excel数据sheet的第N和第M行信息,获取excel内容。

EmailSenderV1是读取配置文件《批量发送邮件.xlsx》,配置sheet获取 发件人邮箱    邮箱账号    口令,发送数据sheet 获取 收件人邮箱    抄送人邮箱    邮件标题    邮件内容    附件文件夹 ,  附件名。

1.

import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import java.util.Properties;

import javax.activation.DataHandler;
import javax.activation.FileDataSource;
import javax.mail.MessagingException;
import javax.mail.internet.MimeBodyPart;
import javax.mail.internet.MimeMultipart;

import org.apache.poi.ss.usermodel.Cell;
import org.apache.poi.ss.usermodel.DateUtil;
import org.apache.poi.ss.usermodel.Row;
import org.apache.poi.ss.usermodel.Sheet;
import org.apache.poi.ss.usermodel.Workbook;
import org.apache.poi.xssf.usermodel.XSSFWorkbook;

import org.apache.commons.mail.DefaultAuthenticator;
import org.apache.commons.mail.EmailAttachment;
import org.apache.commons.mail.EmailException;
import org.apache.commons.mail.MultiPartEmail;
import org.apache.commons.mail.SimpleEmail;

public class EmailSenderHtmlV1 {
    private String smtpServer;
    private String username;
    private String password;
    private String senderEmail;
    private boolean isMany;
    private String excelFile;
    private Sheet configSheet;
    private Sheet dataSheet;
    private String beginrow;
    private String endrow;

    public EmailSenderHtmlV1(boolean many, Properties smtpConfig, String excelFile) {
        setConfig(many, smtpConfig, excelFile);
    }
    public void setConfig(boolean many, Properties smtpConfig, String excelFile) {
        try {
            this.isMany = many;
            if (many) {
                this.excelFile = excelFile;
                FileInputStream file = new FileInputStream(new File(excelFile));
                //System.out.println(file.toString());
                Workbook workbook = new XSSFWorkbook(file);
                //System.out.println(workbook.toString());
                this.configSheet = workbook.getSheet("配置");
                //System.out.println(this.configSheet.toString());
                // 从配置表读取SMTP信息
                Row row = configSheet.getRow(1); // 第二行(index=1)
                this.smtpServer = row.getCell(0).getStringCellValue();
                this.senderEmail = row.getCell(1).getStringCellValue();
                this.username = row.getCell(2).getStringCellValue();
                this.password = row.getCell(3).getStringCellValue();
                workbook.close();
                file.close();
            } else {
                this.smtpServer = smtpConfig.getProperty("smtp_server");
                this.username = smtpConfig.getProperty("username");
                this.password = smtpConfig.getProperty("password");
                this.senderEmail = smtpConfig.getProperty("sender_email");
            }
        } catch (Exception e) {
            System.out.println("邮件配置错误:" + e.getMessage());
            System.exit(1);
        }
    }
    public  void MultiSendEmail(Properties contentConfig) {
        MultiPartEmail email = new MultiPartEmail();
        //email.setTLS(true);
        //email.setSSL(true);
        //email.setDebug(true);
        email.setHostName(smtpServer);
        email.setAuthenticator(new DefaultAuthenticator(username,password));
        try {
            email.setFrom(senderEmail);//发件人
            // 设置收件人
            String receiverEmail = contentConfig.getProperty("receiver_email");
            email.addTo(receiverEmail);
            // 设置抄送人
            String copyEmail = contentConfig.getProperty("copy_email");
            if (copyEmail != null && !copyEmail.isEmpty()) {
                email.addCc(copyEmail);            
                }
            email.setCharset("UTF-8");
            email.setSubject(contentConfig.getProperty("subject"));
            email.setMsg(contentConfig.getProperty("message"));
            // 创建 HTML 内容部分
            MimeBodyPart htmlPart = new MimeBodyPart();
            String htmlContent = contentConfig.getProperty("message");
            try {
                htmlPart.setContent(htmlContent, "text/html; charset=utf-8");
            } catch (MessagingException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }            
            // 创建多部分内容
            MimeMultipart multipart = new MimeMultipart("mixed");
            try {
                multipart.addBodyPart(htmlPart);
            } catch (MessagingException e) {
                // TODO Auto-generated catch block
                e.printStackTrace();
            }
            // 添加附件
            MimeBodyPart attachmentPart = new MimeBodyPart();
            
            String attachmentPath = contentConfig.getProperty("attachment_path");
            String attachmentNames = contentConfig.getProperty("attachment_name");
            EmailAttachment attachment = new EmailAttachment();
            
            if (attachmentNames != null && !attachmentNames.isEmpty()) {
                String[] files = attachmentNames.split(",");
                for (String fileName : files) {
                    attachment.setName(fileName);
                    try {
                         FileDataSource fds = new FileDataSource(attachmentPath + File.separator + fileName);
                         attachmentPart.setDataHandler(new DataHandler(fds));
                         attachmentPart.setFileName(attachment.getName());
                         multipart.addBodyPart(attachmentPart);
                    } catch (MessagingException e) {
                        // TODO Auto-generated catch block
                        e.printStackTrace();
                    }
                }
            }
            // 设置完整内容
            email.setContent(multipart, "multipart/mixed");
            email.send();
            System.out.println("邮件发送成功");
        } catch (EmailException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
        
    }
    public void bulkSendEmail() {
        try {
            FileInputStream file = new FileInputStream(new File(excelFile));
            Workbook workbook = new XSSFWorkbook(file);
            Sheet sheet = workbook.getSheet("发送excel数据");

            // 从第二行(index=1)开始读取数据,第一行是表头
            for (int i = 1; i <= sheet.getLastRowNum(); i++) {
                Row row = sheet.getRow(i);
                if (row == null) continue;

                Properties contentConfig = new Properties();
                contentConfig.setProperty("receiver_email", getCellValue(row.getCell(0)));
                contentConfig.setProperty("copy_email", getCellValue(row.getCell(1)));
                contentConfig.setProperty("subject", getCellValue(row.getCell(2)));
                //contentConfig.setProperty("message", getCellValue(row.getCell(3)));
                contentConfig.setProperty("beginrow", getCellValue(row.getCell(3)));
                contentConfig.setProperty("endrow", getCellValue(row.getCell(4)));
                contentConfig.setProperty("attachment_path", getCellValue(row.getCell(5)));
                contentConfig.setProperty("attachment_name", getCellValue(row.getCell(6)));
                //getexcelcontent(getCellValue(row.getCell(3)),getCellValue(row.getCell(4)));
                ExcelToHtmlConverter eth = new ExcelToHtmlConverter(excelFile, getCellValue(row.getCell(3)),getCellValue(row.getCell(4)));
                contentConfig.setProperty("message", eth.convertExcelToHtml());

                MultiSendEmail(contentConfig);
            }
            workbook.close();
            file.close();
        } catch (IOException e) {
            System.out.println("读取Excel文件错误:" + e.getMessage());
        }
    }
    public void getexcelcontent(String beginrow,String endrow) {
        try {
            FileInputStream file = new FileInputStream(new File(excelFile));
            Workbook workbook = new XSSFWorkbook(file);
            Sheet sheet = workbook.getSheet("发送excel数据内容详情");

            // 从第二行(index=1)开始读取数据,第一行是表头
            for (int i = 1; i <= sheet.getLastRowNum(); i++) {
                Row row = sheet.getRow(i);
                if (row == null) continue;

               
            }
            //contentConfig.setProperty("message", getCellValue(row.getCell(3)));
            workbook.close();
            file.close();
        } catch (IOException e) {
            System.out.println("读取Excel文件错误:" + e.getMessage());
        }
    }
    private String getCellValue(Cell cell) {
        if (cell == null) return "";
        switch (cell.getCellType()) {
            case STRING:
                return cell.getStringCellValue();
            case NUMERIC:
                if (DateUtil.isCellDateFormatted(cell)) {
                    return cell.getDateCellValue().toString();
                } else {
                    return String.valueOf((int) cell.getNumericCellValue());
                }
            case BOOLEAN:
                return String.valueOf(cell.getBooleanCellValue());
            case FORMULA:
                return cell.getCellFormula();
            default:
                return "";
        }
    }
    
    public static void main(String[] args) {
        // 批量发送邮件示例
        String excelFile = "D:/SendMail/批量发送邮件.xlsx";
        
        EmailSenderHtmlV1 emailSender = new EmailSenderHtmlV1(true, null, excelFile);
        emailSender.bulkSendEmail();
        
    }
}

2.

import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import java.util.Properties;


import org.apache.poi.ss.usermodel.Cell;
import org.apache.poi.ss.usermodel.DateUtil;
import org.apache.poi.ss.usermodel.Row;
import org.apache.poi.ss.usermodel.Sheet;
import org.apache.poi.ss.usermodel.Workbook;
import org.apache.poi.xssf.usermodel.XSSFWorkbook;

import org.apache.commons.mail.DefaultAuthenticator;
import org.apache.commons.mail.EmailAttachment;
import org.apache.commons.mail.EmailException;
import org.apache.commons.mail.MultiPartEmail;
import org.apache.commons.mail.SimpleEmail;

public class EmailSenderV1 {
    private String smtpServer;
    private String username;
    private String password;
    private String senderEmail;
    private boolean isMany;
    private String excelFile;
    private Sheet configSheet;
    private Sheet dataSheet;

    public EmailSenderV1(boolean many, Properties smtpConfig, String excelFile) {
        setConfig(many, smtpConfig, excelFile);
    }
    public void setConfig(boolean many, Properties smtpConfig, String excelFile) {
        try {
            this.isMany = many;
            if (many) {
                this.excelFile = excelFile;
                FileInputStream file = new FileInputStream(new File(excelFile));
                //System.out.println(file.toString());
                Workbook workbook = new XSSFWorkbook(file);
                //System.out.println(workbook.toString());
                this.configSheet = workbook.getSheet("配置");
                //System.out.println(this.configSheet.toString());
                // 从配置表读取SMTP信息
                Row row = configSheet.getRow(1); // 第二行(index=1)
                this.smtpServer = row.getCell(0).getStringCellValue();
                this.senderEmail = row.getCell(1).getStringCellValue();
                this.username = row.getCell(2).getStringCellValue();
                this.password = row.getCell(3).getStringCellValue();
                workbook.close();
                file.close();
            } else {
                this.smtpServer = smtpConfig.getProperty("smtp_server");
                this.username = smtpConfig.getProperty("username");
                this.password = smtpConfig.getProperty("password");
                this.senderEmail = smtpConfig.getProperty("sender_email");
            }
        } catch (Exception e) {
            System.out.println("邮件配置错误:" + e.getMessage());
            System.exit(1);
        }
    }
    public  void MultiSendEmail(Properties contentConfig) {
        MultiPartEmail email = new MultiPartEmail();
        //email.setTLS(true);
        //email.setSSL(true);
        //email.setDebug(true);
        email.setHostName(smtpServer);
        email.setAuthenticator(new DefaultAuthenticator(username,password));
        try {
            email.setFrom(senderEmail);//发件人
            // 设置收件人
            String receiverEmail = contentConfig.getProperty("receiver_email");
            email.addTo(receiverEmail);
            // 设置抄送人
            String copyEmail = contentConfig.getProperty("copy_email");
            if (copyEmail != null && !copyEmail.isEmpty()) {
                email.addCc(copyEmail);            
                }
            email.setCharset("UTF-8");
            email.setSubject(contentConfig.getProperty("subject"));
            email.setMsg(contentConfig.getProperty("message"));
            // 添加附件
            String attachmentPath = contentConfig.getProperty("attachment_path");
            String attachmentNames = contentConfig.getProperty("attachment_name");
            EmailAttachment attachment = new EmailAttachment();
            
            if (attachmentNames != null && !attachmentNames.isEmpty()) {
                String[] files = attachmentNames.split(",");
                for (String fileName : files) {
                    attachment.setPath(attachmentPath + File.separator + fileName);
                    attachment.setName(fileName);
                    email.attach(attachment);//添加附件
                }
            }
            email.send();
            System.out.println("邮件发送成功");
        } catch (EmailException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
        
    }
    public void bulkSendEmail() {
        try {
            FileInputStream file = new FileInputStream(new File(excelFile));
            Workbook workbook = new XSSFWorkbook(file);
            Sheet sheet = workbook.getSheet("发送数据");

            // 从第二行(index=1)开始读取数据,第一行是表头
            for (int i = 1; i <= sheet.getLastRowNum(); i++) {
                Row row = sheet.getRow(i);
                if (row == null) continue;

                Properties contentConfig = new Properties();
                contentConfig.setProperty("receiver_email", getCellValue(row.getCell(0)));
                contentConfig.setProperty("copy_email", getCellValue(row.getCell(1)));
                contentConfig.setProperty("subject", getCellValue(row.getCell(2)));
                contentConfig.setProperty("message", getCellValue(row.getCell(3)));
                contentConfig.setProperty("attachment_path", getCellValue(row.getCell(4)));
                contentConfig.setProperty("attachment_name", getCellValue(row.getCell(5)));

                MultiSendEmail(contentConfig);
            }
            workbook.close();
            file.close();
        } catch (IOException e) {
            System.out.println("读取Excel文件错误:" + e.getMessage());
        }
    }

    private String getCellValue(Cell cell) {
        if (cell == null) return "";
        switch (cell.getCellType()) {
            case STRING:
                return cell.getStringCellValue();
            case NUMERIC:
                if (DateUtil.isCellDateFormatted(cell)) {
                    return cell.getDateCellValue().toString();
                } else {
                    return String.valueOf((int) cell.getNumericCellValue());
                }
            case BOOLEAN:
                return String.valueOf(cell.getBooleanCellValue());
            case FORMULA:
                return cell.getCellFormula();
            default:
                return "";
        }
    }
}

http://www.dtcms.com/wzjs/72727.html

相关文章:

  • 酒店官方网站建设书crm系统成功案例分享ppt
  • 安徽省建设工程信息网安徽省政务郑州seo优化培训
  • jsp做网站组件互联网推广是什么工作内容
  • 北京微网站开发竞价培训课程
  • 青岛外贸网站建站寄生虫seo教程
  • 网站开发设计方案app推广方案策划
  • 建站一条龙设计制作百度地图网页版进入
  • 桂林网站制作seo优化标题
  • 网站建设技术简易留言板东莞网络推广托管
  • 临海大经建设集团网站windows优化大师官网
  • 政府网站建设总体情况最新网站发布
  • 实时视频网站怎么做站牛网是做什么的
  • 北京建委网站查询系统网站建设制作
  • 做静态网站成本深圳全网信息流推广公司
  • 大陆网站空间大型网站seo课程
  • 泰州市网站制作公司外国网站开放的浏览器
  • 沧州网站建设的技术方案seo外包杭州
  • 手机怎么做弹幕小视频网站南京seo网站优化
  • 上海网站建设 分类广告百度站长快速收录
  • 用凡科做的网站打不开免费发布平台
  • 深圳做微信商城网站佛山疫情最新情况
  • 厦门做网站推广怎么上百度推广产品
  • 政府网站网络内容建设免费建站的网站
  • 做网站一般什么问题免费个人网站申请
  • 怎么找做企业网站的seo云优化公司
  • 从零开始学习网站开发计划台湾搜索引擎
  • 中国三线建设网站百度关键词热度查询工具
  • 什么网站可以做告白的网页招聘seo专员
  • 戴尔电脑网站建设方案范文什么是软文推广
  • 深圳企业学校网站建设海外广告优化师