📄 mailaction.java
字号:
package com.easyjf.bbs.action;
import java.util.Map;
import com.easyjf.bbs.business.Mail;
import com.easyjf.bbs.business.UserInfo;
import com.easyjf.bbs.business.config.BBSConfig;
import com.easyjf.util.CommUtil;
import com.easyjf.web.Module;
import com.easyjf.web.Page;
import com.easyjf.web.WebForm;
import com.easyjf.web.tools.AbstractCmdAction;
import org.apache.commons.mail.SimpleEmail;
public class MailAction extends AbstractCmdAction {
public Page doInit(WebForm form, Module module) {
// TODO Auto-generated method stub
return null;
}
public Page doFind(WebForm form, Module module) {
return module.findPage("send");
}
public Page doSend(WebForm form, Module module) {
String username = CommUtil.null2String(form.get("username")).trim();
if (!"".equals(username) && username != null) {
System.out.println(username);
UserInfo user = UserInfo.readByUserName(username);
boolean ret = false;
if (user != null) {
String password = user.getPassword();
Map mails = BBSConfig.getInstance().getMails();
for (int i = 0; i < mails.size(); i++) {
try {
SimpleEmail mail = this.mail2email((Mail) mails
.get(new Integer(i)), username, password);
mail.send();
ret = true;
break;
} catch (Exception e) {
System.out.println("error in sending mail");
continue;
}
}
if (ret) {
form.addResult("msg", "密码已发送");
return module.findPage("main");
} else {
form.addResult("msg", "发送失败,请联系管理员");
return module.findPage("send");
}
} else {
form.addResult("msg", "没有该注册的用户名");
return module.findPage("send");
}
} else {
form.addResult("msg", "填写注册的用户名");
return module.findPage("send");
}
}
private SimpleEmail mail2email(Mail mail, String username, String password)
throws Exception {
SimpleEmail email = new SimpleEmail();
String msg = mail.getMsg();
msg = msg.replaceAll("#username", username);
msg = msg.replaceAll("#password", password);
mail.setMsg(msg);
email.setCharset(mail.getCharset());
email.setMsg(msg);
email.setFrom(mail.getFrom());
email.setSubject(mail.getSubject());
email.setHostName(mail.getHost());
return email;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -