//邮件附件文件名,暂时设定附件最多为10个
String[] files=new String[10];//10 file max
//实际收件人数目
int toNumber=0;
/**
* Constructor for SendMail.
*/
public SendMail() {
}
//set host
public void setHost(String host){
this.host=host;
}
//set form address
public void setForm(String form){
this.from=form;
}
//add to address
public void addTo(String receive){
to[toNumber]=receive;
toNumber=toNumber+1;
}
//set title
public void setTitle(String title){
this.title=title;
}
//set text
public void setText(String text){
this.text=text;
}
//add file
public void addFile(String file){
for(int i=0;i<10;i++){
if (files[i]==null){
files[i]=file;
break;
}
}
}
//发送邮件
public int send(){
try{
for(int j=0;j<toNumber;j++){
// Get system properties
Properties props = System.getProperties();
// Setup mail server
props.put("mail.smtp.host", host);
// Get session
Session session = Session.getDefaultInstance(props, null);
// Define message
MimeMessage message = new MimeMessage(session);
message.setFrom(new InternetAddress(from));
message.addRecipient(Message.RecipientType.TO,
new InternetAddress(to[j]));
message.setSubject(title);
// Create the message part
BodyPart messageBodyPart = new MimeBodyPart();
// Fill the message
messageBodyPart.setText(text);
Multipart multipart = new MimeMultipart();
multipart.addBodyPart(messageBodyPart);
// Part two is attachment
for (int i=0;i<files.length;i++){
if (files[i]==null){
break;
}
messageBodyPart = new MimeBodyPart();
DataSource source = new FileDataSource(files[i]);
messageBodyPart.setDataHandler(new DataHandler(source));
messageBodyPart.setFileName(files[i].substring(files[i].lastIndexOf("\\")+1));
multipart.addBodyPart(messageBodyPart);
}
// Put parts in message
message.setContent(multipart);