我正在編寫一個代碼,用於以連續循環的方式將多個發件人的電子郵件發送給一個收件人。我要讀的發件人csv文件EMAILID的,我已經寫了代碼raeding如下:調用一個將csv文件讀入servlet的類方法
public class ReadFile {
CsvReader senders;
public CsvReader read(){
try {
senders = new CsvReader("C:/Users/D/Documents/Senderlist.csv");
senders.readHeaders();
while (senders.readRecord())
{
String SenderID = senders.get("SenderID");
String ReceiverID = senders.get("ReceiverID");
// perform program logic here
System.out.println(SenderID + " : " + ReceiverID);
}
senders.close();
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
ArrayList<String> al=new ArrayList<String>();
al.add("senders");
//traversing list through iterator
Iterator itr=al.iterator();
while(itr.hasNext()){
System.out.println(itr.next());
}
return senders;
}
}
現在我該如何調用這個方法在我的servlet讀取和連續循環發送電子郵件,servlet的是如下:
public class MailController extends HttpServlet {
private static final long serialVersionUID = 1L;
private String ExchangeIP;
private String port;
public MailController() {
super();
// TODO Auto-generated constructor stub
}
public void init() {
// reads SMTP server setting from web.xml file
ServletContext context = getServletContext();
ExchangeIP = context.getInitParameter("ExchangeIP");
port = context.getInitParameter("port");
}
/**
* @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
*/
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// TODO Auto-generated method stub
doPost(request, response);
}
/**
* @see HttpServlet#doPost(HttpServletRequest request, HttpServletResponse response)
*/
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
// read from field
List<File> uploadedFiles= saveUploadedFiles(request);
String sender=request.getParameter("sender");// reading from the form page
String recipient=request.getParameter("recipient");
String subject=request.getParameter("subject");
String content=request.getParameter("content");
String resultMessage = "";
try {
EmailUtility.sendEmail(ExchangeIP, port,user, recipient, subject, content, uploadedFiles);
resultMessage = "The e-mail has been sent successfully";
} catch (Exception ex) {
ex.printStackTrace();
resultMessage = "There were an error: " + ex.getMessage();
} finally {
//deleteUploadFiles(uploadedFiles);
request.setAttribute("Message", resultMessage);
getServletContext().getRequestDispatcher("/Result.jsp").forward(request, response);
}
}
你在上傳類似csv文件到servlet的東西嗎?或者只是試圖調用servlet中的消息發送過程?你的'saveUploadedFiles(request);'在這裏做什麼? –
這是用於上傳附件..我沒有顯示在servlet附件的代碼在這裏..我有發件人電子郵件ID存儲在CSV文件現在我想使用該senderlist發送電子郵件逐一循環到單個收件人。所以我寫了這個Readfile類來讀取上面顯示的csv文件,我正面臨的prblm是如何在servlet類中調用該讀取方法以及如何應用循環發送電子郵件..(我正在開發Java開發。) – Dip