java邮件群发代码_基于java的邮件群发软件

最近工作需要,做一个邮件群发系统,功能实现邮件群发,右键删除全选等功能,大致设计如下:

发送页面:

final JButton importButton = new JButton(“导入地址”);

importButton.addActionListener(new ActionListener(){

//添加事件

public void actionPerformed(ActionEvent e){

//TODO 读取excel文件,写入list

JFileChooser fc=new JFileChooser();

int i=fc.showOpenDialog(scrollPane);

if(i==JFileChooser.APPROVE_OPTION){

File file=fc.getSelectedFile();

if(file.toString().endsWith(“xls”)){

String URL=file.getPath();

try{

List> list = ExcelCommonUtil.readExcelCommon(file.toString(),true);

if(list==null || list.size()==0){

JOptionPane.showMessageDialog(null,”电子表格内容为空!”);

return;

}

int listLength = list.size();

String [][] tableVales= new String[listLength][list.get(0).size()]; //数据

for(int j = 0; j

if(list.get(j).size()>0){

String id = OperateProperties.genId();

//tableVales[j][1]=list.get(j).get(excelCloumnId);

tableVales[j][1]=id;

if(list.get(j).size()>1){

tableVales[j][2]=list.get(j).get(excelCloumnEmail);

}else{

tableVales[j][2]= “”;

}

}

int rowCount = table.getRowCount() +1;   //行数加上1

Object[] temp = {String.valueOf(rowCount),tableVales[j][1],tableVales[j][2],true,INITSTATUS};

tableModel.addRow(temp);

}

table.updateUI();

}catch(Exception e1){

e1.printStackTrace();

JOptionPane.showMessageDialog(null,”读取电子表格文件异常!”);

}

}else{

JOptionPane.showMessageDialog(null,”必须是excel2003电子表格文件!”);

}

}

}

});

panel.add(importButton);

1359684852_8065.png

大致功能就这些。

sendButton.addActionListener(new ActionListener(){

//添加事件

public void actionPerformed(ActionEvent e){

username = OperateProperties.ReadProperties(filename, “username”);

password = OperateProperties.ReadProperties(filename, “password”);

smtp = OperateProperties.ReadProperties(filename, “smtp”);

String excelCloumn = OperateProperties.ReadProperties(filename, “excelCloumnEmail”);

excelCloumnEmail = Integer.parseInt(excelCloumn);

if(table.getRowCount()==0){

JOptionPane.showMessageDialog(null,”电子邮件地址为空!”);

return;

}

//TODO 获取复选框值 tempList 供调用

for(int i = 0;i

if((Boolean)tableModel.getValueAt(i,3)){

int key = i;

String value = (String)tableModel.getValueAt(i, 2);

tempMap.put(key, value);

}

}

if(tempMap.size()

JOptionPane.showMessageDialog(null,”请选择要发送的邮件地址!”);

return;

}

new Message();

title = Message.getEmailCap();

content = Message.getContent();

fujian = Message.getFujian();

color = new String[table.getRowCount()];

if(title!=null&& content!=null){

buttonActionPerformed(e);

}

Message.setEmailCap(null);

Message.setContent(null);

Message.setFujian(null);

}

});

panel.add(sendButton);

关键代码:

1.右键功能:

声明邮件菜单:

private JPopupMenu popupMenu;

初始化邮件菜单内容:

//右键

popupMenu = new JPopupMenu();

del = new JMenuItem(“删除”);

slectAll = new JMenuItem(“全选”);

popupMenu.add(del);

popupMenu.add(slectAll);

添加事件:

//删除事件

del.addActionListener(new ActionListener() {

public void actionPerformed(ActionEvent e) {

int selectedRow = table.getSelectedRow();//获得选中行的索引

if(selectedRow!=-1)  //存在选中行

{

String id = (String) tableModel.getValueAt(selectedRow, 0);

String genId = (String) tableModel.getValueAt(selectedRow, 1);

String email = (String) tableModel.getValueAt(selectedRow, 2);

boolean select = (Boolean) tableModel.getValueAt(selectedRow, 3);

String status = (String) tableModel.getValueAt(selectedRow, 4);

Object[] temp = {id,genId,email,select,status};

tableModel.removeRow(temp);  //删除行

//强制刷新界面

table.updateUI();

}else{

JOptionPane.showMessageDialog(null,”请选择一行”);

}

}});

文章知识点与官方知识档案匹配,可进一步学习相关知识Java技能树首页概览92460 人正在系统学习中 相关资源:软件测试群软件测试群软件测试群软件测试群_测试群-其它文档类…

声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2021年1月12日
下一篇 2021年1月12日

相关推荐