一个javamail的问题(在线等) 我想做一个发软件的页面,可以完成给自己的邮箱发一个邮件的功能(比如[email protected]) 可不知道怎么写 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 LZ你可以看这个http://www.java2000.net/viewthread.jsp?tid=177#T3949 package dm;/* * <p> * Description:用来发送邮件 * </p> * @author <a href="mailto:[email protected]">Wangwenjun</a> * @Date 2008-03-03 AM 16-38-51 * */import java.util.Date;import java.util.Properties;import javax.mail.Address;import javax.mail.Message;import javax.mail.MessagingException;import javax.mail.NoSuchProviderException;import javax.mail.Session;import javax.mail.Transport;import javax.mail.internet.AddressException;import javax.mail.internet.InternetAddress;import javax.mail.internet.MimeMessage;import org.apache.commons.logging.Log;import org.apache.commons.logging.LogFactory;import dm.configBean.MailConfig;import dm.parse.EncapMail;import dm.parse.ParseMailConfig;public class MailSendTrap { private Properties prop; private Message message; private Session session = null; /* * getDmConfigBean()方法主要是获得日志文件的内容 */ private ParseMailConfig parseMailConfig = new ParseMailConfig(); private MailConfig mailConfig; Log log = LogFactory.getLog(MailSendTrap.class); public MailConfig getMailConfig() { String path = System.getProperty("user.dir"); String filepath = "/config/mailCon.properties"; mailConfig = parseMailConfig.getMailConfig(path+filepath); return mailConfig; } public Properties getProperties() { this.prop = new Properties(); prop.put("mail.smtp.host", this.getMailConfig().getSmtp_address()); prop.put("mail.smtp.auth", "true"); return prop; } public Session getSession() { this.session = Session.getInstance(this.getProperties(), null); session.setDebug(true); return session; } public void sendMail() { this.message = new MimeMessage(this.getSession()); try { Address from = new InternetAddress(this.getMailConfig() .getMailfrom()); String address[] = this.getMailConfig().getMailto().split(";"); Address to[] = new Address[address.length]; for(int i=0;i<address.length;i++) { to[i] = new InternetAddress(address[i]); }// Address to = new InternetAddress(this.getMailConfig().getMailto()); this.message.setFrom(from); this.message.setRecipients(Message.RecipientType.TO, to); EncapMail encapMail = new EncapMail(); if(encapMail.getMail().getTitle()!=null&&encapMail.getMail().getContent()!=null&&!encapMail.getMail().getTitle().equals("")){ System.out.println("执行发送邮件的代码!"); log.debug("准备发送邮件"); this.message.setSubject(encapMail.getMail().getTitle()); this.message.setText(encapMail.getMail().getContent()); this.message.setSentDate(new Date()); this.message.saveChanges(); System.out.println("youmeiyoufasongne?"); this.sendTransport(message); System.out.println("youmeiyoufasongne?1"); } else{ System.out.println("不发送邮件"); log.debug("不发送邮件"); } } catch (AddressException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (MessagingException e) { // TODO Auto-generated catch block e.printStackTrace(); } } public void sendTransport(Message message) { try { Transport transport = this.getSession().getTransport("smtp"); System.out.println("transport1"); transport.connect(this.getMailConfig().getSmtp_address(), this .getMailConfig().getUsername(), this.getMailConfig() .getPassword()); System.out.println("transport2"); transport.sendMessage(message, message.getAllRecipients()); System.out.println("transport3"); transport.close(); } catch (NoSuchProviderException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (MessagingException e) { // TODO Auto-generated catch block e.printStackTrace(); } }}另外还需要导入javamailjar包,这是我前一段时间写过的一个程序中的一部分,记得加分啊 Java中的匿名内部类如何与外部类交互? javase java基础问题 创建JDialog窗口如何加上右上方最大化最小化按钮 问个简单for? 百狗狗双搜(搜索之家)---搜索资料的最好网站(捧场就给分)^_^ 参数传递的问题? 关于两个FRAME中变量互相调用的问题~~ Apusic2.0在官方网上无法下载??? 关于class打成jar包后,app访问路径问题,大家来讨论!给分!!! 这个程序怎么有错误? 编码GBK不可影射字符什么意思呀
http://www.java2000.net/viewthread.jsp?tid=177#T3949
* <p>
* Description:用来发送邮件
* </p>
* @author <a href="mailto:[email protected]">Wangwenjun</a>
* @Date 2008-03-03 AM 16-38-51
* */
import java.util.Date;
import java.util.Properties;import javax.mail.Address;
import javax.mail.Message;
import javax.mail.MessagingException;
import javax.mail.NoSuchProviderException;
import javax.mail.Session;
import javax.mail.Transport;
import javax.mail.internet.AddressException;
import javax.mail.internet.InternetAddress;
import javax.mail.internet.MimeMessage;import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;import dm.configBean.MailConfig;
import dm.parse.EncapMail;
import dm.parse.ParseMailConfig;public class MailSendTrap {
private Properties prop; private Message message; private Session session = null; /*
* getDmConfigBean()方法主要是获得日志文件的内容
*/
private ParseMailConfig parseMailConfig = new ParseMailConfig();
private MailConfig mailConfig;
Log log = LogFactory.getLog(MailSendTrap.class);
public MailConfig getMailConfig()
{
String path = System.getProperty("user.dir");
String filepath = "/config/mailCon.properties";
mailConfig = parseMailConfig.getMailConfig(path+filepath);
return mailConfig;
}
public Properties getProperties() {
this.prop = new Properties();
prop.put("mail.smtp.host", this.getMailConfig().getSmtp_address());
prop.put("mail.smtp.auth", "true");
return prop;
} public Session getSession() {
this.session = Session.getInstance(this.getProperties(), null);
session.setDebug(true);
return session;
} public void sendMail() {
this.message = new MimeMessage(this.getSession());
try {
Address from = new InternetAddress(this.getMailConfig()
.getMailfrom());
String address[] = this.getMailConfig().getMailto().split(";");
Address to[] = new Address[address.length];
for(int i=0;i<address.length;i++)
{
to[i] = new InternetAddress(address[i]);
}
// Address to = new InternetAddress(this.getMailConfig().getMailto());
this.message.setFrom(from);
this.message.setRecipients(Message.RecipientType.TO, to);
EncapMail encapMail = new EncapMail();
if(encapMail.getMail().getTitle()!=null&&encapMail.getMail().getContent()!=null&&!encapMail.getMail().getTitle().equals("")){
System.out.println("执行发送邮件的代码!");
log.debug("准备发送邮件");
this.message.setSubject(encapMail.getMail().getTitle());
this.message.setText(encapMail.getMail().getContent());
this.message.setSentDate(new Date());
this.message.saveChanges();
System.out.println("youmeiyoufasongne?");
this.sendTransport(message);
System.out.println("youmeiyoufasongne?1");
}
else{
System.out.println("不发送邮件");
log.debug("不发送邮件");
}
} catch (AddressException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (MessagingException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} } public void sendTransport(Message message) {
try {
Transport transport = this.getSession().getTransport("smtp");
System.out.println("transport1");
transport.connect(this.getMailConfig().getSmtp_address(), this
.getMailConfig().getUsername(), this.getMailConfig()
.getPassword());
System.out.println("transport2");
transport.sendMessage(message, message.getAllRecipients());
System.out.println("transport3");
transport.close();
} catch (NoSuchProviderException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (MessagingException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
另外还需要导入javamailjar包,这是我前一段时间写过的一个程序中的一部分,记得加分啊