修改后可以发送附件、抄送、密送的javabean,吐血推荐~(javamail范例)
作者:Andy.m 文章来源:www.jspcn.net
发布日期:2004年02月16日
/*
*Author:tyfun
*DateTime:2003.01.09
*Package:com.westarsoft.function
*/
package com.westarsoft.function;
import java.util.*;
import java.io.*;
import javax.mail.*;
import javax.mail.internet.*;
import javax.activation.*;
public class SendMail {
private String SMTPServer = new String();
private String from = new String();
private String subject = new String();
private String content = new String();
private String user = new String();
private String password = new String();
private String fileAttachment = new String();
public String getSMTPServer() {
return SMTPServer;
}
public void setSMTPServer(String SMTPServer) {
this.SMTPServer = SMTPServer;
}
public String getFrom() {
return from;
}
public void setFrom(String from) {
this.from = from;
}
public String getSubject() {
return subject;
}
public void setSubject(String subject) {
this.subject = subject;
}
public String getContent() {
return content;
}
public void setContent(String content) {
this.content = content;
}
public String getUser() {
return user;
}
public void setUser(String user) {
this.user = user;
}
public String getPassword() {
return password;
}
public void setPassword(String password) {
this.password = password;
}
public String getFileAttachment() {
return fileAttachment;
}
public void setFileAttachment(String fileAttachment) {
this.fileAttachment = fileAttachment;
}
public void sendMailTo(String to,String cc,String bcc) {
try {
Properties props = new Properties();
Session sendMailSession;
Store store;
Transport transport;
sendMailSession = Session.getInstance(props, null);
props.put("mail.smtp.host", SMTPServer);
MimeMessage newMessage = new MimeMessage(sendMailSession);
newMessage.setFrom(new InternetAddress(from));
newMessage.setSubject(subject);
newMessage.setSentDate(new Date());
/*
StringTokenizer tokenTO = new StringTokenizer(to, ",");
InternetAddress[] addrArrTO = new InternetAddress[tokenTO.countTokens()];
int i = 0;
while(tokenTO.hasMoreTokens()) {
addrArrTO[i] = new InternetAddress(tokenTO.nextToken().toString());
i++;
}
*/
transport = sendMailSession.getTransport("smtp");
transport.connect(SMTPServer, user, password);
//newMessage.setRecipients(Message.RecipientType.TO, addrArrTO);
newMessage.setRecipients(Message.RecipientType.TO, InternetAddress.parse(to));
newMessage.setRecipients(Message.RecipientType.CC, InternetAddress.parse(cc));
newMessage.setRecipients(Message.RecipientType.BCC, InternetAddress.parse(bcc));
MimeBodyPart messageBodyPart = new MimeBodyPart();
messageBodyPart.setText(content);
Multipart multipart = new MimeMultipart();
multipart.addBodyPart(messageBodyPart);
messageBodyPart = new MimeBodyPart();
DataSource source = new FileDataSource(fileAttachment);
messageBodyPart.setDataHandler(new DataHandler(source));
messageBodyPart.setFileName(fileAttachment);
multipart.addBodyPart(messageBodyPart);
newMessage.setContent(multipart);
transport.send(newMessage);
}
catch(Exception e) {
System.out.println(e);
}
}
}
if(request.getMethod().equals("POST")) {
SendMail mail = new SendMail();
mail.setSMTPServer("200.1.1.157");
mail.setUser("lint");
mail.setPassword("30320");
mail.setFrom(request.getParameter("from"));
mail.setSubject(request.getParameter("subject"));
mail.setContent(request.getParameter("content"));
mail.setFileAttachment(request.getParameter("filename"));
mail.sendMailTo(request.getParameter("to"),request.getParameter("cc"),request.getParameter("bcc"));
}
%>