另外接分点:http://community.csdn.net/Expert/topic/5259/5259291.xml?temp=.5730249
解决方案 »
- Struts2中的中文文件下载乱码问题!
- 首次做struts2的login就出错了 谢谢前辈们帮组 跟帖有份
- hibernate问题(高分请教)
- spring+struts中启动tomcat碰到的问题
- WebService底层是采用什么机制呢
- 在线求助:请问在EJB中如何将日期的时间信息(时 分 秒)传到数据库
- xsl-fo问题
- 要怎样才可以在weblogic7启动时把sqlserver的JDBC驱动加载进去呢?谢了先!!!
- 本人刚学ejb,麻烦发个简单的例子给我看看吧,谢谢!
- 求教ejb2.0遇到问题,bean之间的关系
- 为什么我用 httpClient 获取不到网易的校验码呢?
- 200分求一javaMail例子
msg.append("中间可以加入所要发到邮箱的页面");
msg.append("中间可以加入所要发到邮箱的页面");
msg.append("中间可以加入所要发到邮箱的页面");
msg.append("中间可以加入所要发到邮箱的页面");
msg.append("中间可以加入所要发到邮箱的页面");try {
EmailTool emt = new EmailTool(); //实例化下面发送邮件的功能bean
emt.setTo(要发送到的邮箱);
emt.setFrom("发送地址");
emt.setSubject("发送的标题")
emt.setContent(msg.toString()); //内容格式转换
emt.setSmtpHost("邮件服务器地址。自己申请");
emt.setUser("服务器用户名");
emt.setPassword("服务器密码");
emt.startSend();
} catch (Exception e) {}
//注 :注意写法与页面一样,但是页面中的双引号一定要换成单引号
功能bean太长,不让发下个帖子发
import javax.mail.Store;
import javax.mail.internet.*;
import javax.activation.*;
import java.util.*;
import javax.servlet.http.*;
import java.text.SimpleDateFormat;
public class EmailTool {
public EmailTool() {
try {
jbInit();
} catch (Exception ex) {
ex.printStackTrace();
}
} private String from;
private String to;
private String user;
private String password;
private String smtpHost;
private String pop3Host;
private String hostName;
private String subject;
private String content;
private String filename;
public String getFrom() {
return from;
} public String getTo() {
return to;
} public String getUser() {
return user;
} public String getPassword() {
return password;
} public String getSmtpHost() {
return smtpHost;
} public String getPop3Host() {
return pop3Host;
} public String getHostName() {
return hostName;
} public String getSubject() {
return subject;
}
public String getContent() {
return content;
} public String getFilename() {
return filename;
}
public void setFrom(String from) {
this.from = from;
} public void setTo(String to) {
this.to = to;
}
public void setUser(String user) {
this.user = user;
} public void setPassword(String password) {
this.password = password;
} public void setSmtpHost(String smtpHost) {
this.smtpHost = smtpHost;
} public void setPop3Host(String pop3Host) {
this.pop3Host = pop3Host;
} public void setHostName(String hostName) {
this.hostName = hostName;
} public void setSubject(String subject) {
this.subject = subject;
} public void setContent(String content) {
this.content = content;
} public void setFilename(String filename) {
this.filename = filename;
}
//sendMail start method
public void startSend() throws MessagingException {
runSend();
} private void runSend() throws MessagingException {
sendMail();
}//receive start method
public void startReceive() throws MessagingException {
runReceive();
} public void runReceive() throws MessagingException {
receiveMail();
}
private void sendMail() throws MessagingException {
try {
// this.smtpHost = this.createSmtpHost();
// Get system properties
// Properties props = System.getProperties();
Properties props = new Properties();
// Setup mail server
props.put("mail.smtp.host", this.smtpHost); props.put("mail.smtp.auth", "false"); //验证 // Get session
Session session = Session.getDefaultInstance(props);
session.setDebug(true);
// Define message
MimeMessage message = new MimeMessage(session);
message.setFrom(new InternetAddress(from));
//message.setFrom();
message.addRecipient(Message.RecipientType.TO,
new InternetAddress(to));
message.setSubject(this.getSubject());
System.out.println("::"+this.getFilename());
if (this.getFilename() != null) {
BodyPart messagebodyPart = new MimeBodyPart();
messagebodyPart.setContent(this.getContent(),
"text/html;charset=gb2312");
System.out.println("文件名称:" + this.getFilename());
Multipart multipart = new MimeMultipart();
multipart.addBodyPart(messagebodyPart);
messagebodyPart = new MimeBodyPart();
DataSource source = new FileDataSource(this.getFilename());
messagebodyPart.setDataHandler(new DataHandler(source));
messagebodyPart.setFileName(this.getFilename());
multipart.addBodyPart(messagebodyPart); // message.setContent(this.content, "text/html;charset=gb2312");
message.setContent(multipart);
message.setSentDate(new java.util.Date()); // Send message
message.saveChanges();
Transport transport = session.getTransport("smtp");
transport.connect(this.smtpHost, this.user, this.password); transport.sendMessage(message,
message.getAllRecipients());
transport.close();
System.out.println("发送成功!");
} else {
message.setContent(this.content, "text/html;charset=gb2312");
message.setSentDate(new java.util.Date());
// Send message
message.saveChanges();
Transport transport = session.getTransport("smtp");
transport.connect(this.smtpHost, this.user, this.password);
message.saveChanges();
//transport.sendMessage(message, message.getAllRecipients());
transport.sendMessage(message,
message.getRecipients(Message.
RecipientType.TO));
transport.close();
}
} catch (Exception e) {
// System.out.println("aaaaaaaaaa");
e.printStackTrace();
throw new MessagingException("throw in tSql1"); }
} private void receiveMail() throws MessagingException {
Store store = null;
try { store.connect(this.pop3Host, -1, this.user + "@" + this.hostName,
this.password);
} catch (javax.mail.AuthenticationFailedException e) {
content = "用户名与密码不匹配";
}
try {
//open main "INBOX" folder.
Folder folder = store.getFolder("INBOX");
folder.open(Folder.READ_WRITE);
//Get folder's list of messages.
Message message[] = folder.getMessages();
//Retrieve message headers for each message in folder.
FetchProfile fp = new FetchProfile(); fp.add(FetchProfile.Item.ENVELOPE);
fp.add(FetchProfile.Item.FLAGS);
fp.add("X-Mailer");
folder.fetch(message, fp); String contentbody = "";
String mailFrom = "";
String mailTime = "";
String mailSubject = "";
String mailFileName = "";
Database database = new Database();
//Address f[]=new Address[folder.getMessageCount()];
for (int j = 0; j < folder.getMessageCount(); j++) {
//get mail from
Object f = message[j].getFrom();
mailFrom = (String) f;
//get mail subject
mailSubject = message[j].getSubject();
//get mail file name
mailFileName = message[j].getFileName();
//get mail time
Date t = message[j].getReceivedDate();
SimpleDateFormat bartDateFormat = new SimpleDateFormat(
"yyyy-MM-dd");
mailTime = bartDateFormat.format(t);
//get mail content
Object o = message[j].getContent();
if (message[j].isMimeType("text/plain")) {
contentbody = (String) o + "</td>";
StringBuffer buf = new StringBuffer(contentbody.length() +
6);
char ch = ' ';
for (int p = 0; p < contentbody.length(); p++) { //若遇到换行就转为<br>
ch = contentbody.charAt(p);
if (ch == '\n') {
buf.append("<br>");
} else {
buf.append(ch);
}
}
contentbody = buf.toString();
} else if (message[j].isMimeType("text/html")) {
contentbody = (String) o + "</td>";
}
//database
} } catch (Exception e) { } } public static void main(String[] args) {
/* 可以测试
try {
em.startSend();
} catch (MessagingException ex) {
}
System.out.println("发送完成");
*/
} private void jbInit() throws Exception {
}
}