java代码发送邮件 java代码实现发送邮件

java实现发送邮件功能

要实现邮件发送功能需要导入包:mail.jar

成都创新互联专注为客户提供全方位的互联网综合服务,包含不限于成都网站建设、成都网站设计、新河网络推广、微信小程序定制开发、新河网络营销、新河企业策划、新河品牌公关、搜索引擎seo、人物专访、企业宣传片、企业代运营等,从售前售中售后,我们都将竭诚为您服务,您的肯定,是我们最大的嘉奖;成都创新互联为所有大学生创业者提供新河建站搭建服务,24小时服务热线:028-86922220,官方网址:www.cdcxhl.com

/*

* Generated by MyEclipse Struts

* Template path: templates/java/JavaClass.vtl

*/

package org.demo.action;

import java.util.Properties;

import javax.mail.Message;

import javax.mail.Session;

import javax.mail.Transport;

import javax.mail.internet.InternetAddress;

import javax.mail.internet.MimeMessage;

import javax.servlet.http.HttpServletRequest;

import javax.servlet.http.HttpServletResponse;

import org.apache.struts.action.Action;

import org.apache.struts.action.ActionForm;

import org.apache.struts.action.ActionForward;

import org.apache.struts.action.ActionMapping;

import org.demo.form.DemoForm;

public class DemoAction extends Action {

private static final String CONTENT_TYPE = "test/html;charset=GB2312";

public ActionForward execute(ActionMapping mapping, ActionForm form,

HttpServletRequest request, HttpServletResponse response) {

DemoForm demoForm = (DemoForm) form;

System.out.println("标题是" + demoForm.getBiaoti());

System.out.println("内容是" + demoForm.getNeirong());

try {

response.setContentType(CONTENT_TYPE);

String smtphost = "smtp.nj.headware.cn"; // 发送邮件服务器

String user = "q0000015369"; // 邮件服务器登录用户名

String password = "Queshuwen26"; // 邮件服务器登录密码

String from = "q0000015369@nj.headware.cn"; //

String to = "c0000016205@nj.headware.cn"; // 收件人邮件地址

String subject = demoForm.getBiaoti(); // 邮件标题

String body = demoForm.getNeirong(); // 邮件内容

Properties props = new Properties();

props.put("mail.smtp.host", smtphost);

props.put("mail.smtp.auth", "true");

Session ssn = Session.getInstance(props, null);

MimeMessage message = new MimeMessage(ssn);

InternetAddress fromAddress = new InternetAddress(from);

message.setFrom(fromAddress);

InternetAddress toAddress = new InternetAddress(to);

message.addRecipient(Message.RecipientType.TO, toAddress);

message.setSubject(subject);

message.setText(body);

Transport transport = ssn.getTransport("smtp");

transport.connect(smtphost, user, password);

transport.sendMessage(message, message

.getRecipients(Message.RecipientType.TO));

// transport.send(message);

transport.close();

return mapping.findForward("succ");

} catch (Exception e) {

e.printStackTrace();

return mapping.findForward("fail");

}

}

}

如何把java程序运行结果发送到邮箱

可以选择使用log4j,它是一款开源的日志记录工具,提供发送日志邮件功能

Log4j发送日志邮件的作用:

项目错误信息能及时(实时)反映给项目维护人员以及相关负责人。

优点:

1.快速响应;

2.共同监督;

3.邮件正文直接显示了错误信息,拷贝信息比登陆服务器再查找要方便;

4.在日志信息继续写入文件的前提下,多了另外一种获取信息的渠道。

补充:Log4j可以实现输出到控制台,文件,回滚文件,发送日志邮件,数据库,自定义标签。

发送邮件的一个重要的类是SMTPAppender,之前用的是 log4j-1.2.8,在1.2.8的版本中,SMTPAppender没有SMTPPassword 和SMTPUsername 属性。这两个属性分别是登录SMTP服务器发送认证的用户名和密码。

依赖的jar包:

log4j-1.2.15.jar(版本低于log4j-1.2.14.jar不支持SMTP认证)

mail.jar

activation.jar

在log4j.properties文件中配置:

### send error through email.

#log4j的邮件发送appender,如果有必要你可以写自己的appender

log4j.appender.MAIL=org.apache.log4j.net.SMTPAppender

#发送邮件的门槛,仅当等于或高于ERROR(比如FATAL)时,邮件才被发送

log4j.appender.MAIL.Threshold=ERROR

#缓存文件大小,日志达到10k时发送Email

log4j.appender.MAIL.BufferSize=10

#发送邮件的邮箱帐号

log4j.appender.MAIL.From=xxx@163.com

#SMTP邮件发送服务器地址

log4j.appender.MAIL.SMTPHost=smtp.163.com

#SMTP发送认证的帐号名

log4j.appender.MAIL.SMTPUsername=xxx@163.com

#SMTP发送认证帐号的密码

log4j.appender.MAIL.SMTPPassword=xxx

#是否打印调试信息,如果选true,则会输出和SMTP之间的握手等详细信息

log4j.appender.MAIL.SMTPDebug=false

#邮件主题

log4j.appender.MAIL.Subject=Log4JErrorMessage

#发送到什么邮箱,如果要发送给多个邮箱,则用逗号分隔;

#如果需要发副本给某人,则加入下列行

#log4j.appender.MAIL.Bcc=xxx@xxx.xxx

log4j.appender.MAIL.To=xxx@xxx.com

log4j.appender.MAIL.layout=org.apache.log4j.PatternLayout

log4j.appender.MAIL.layout.ConversionPattern=[framework]%d - %c -%-4r[%t]%-5p %c %x -%m%n

在java代码中,可是用logger.info("message");方法将message代表的消息发送到指定邮箱中

如何使用Java发送qq邮件

1新建Java项目

2然后再项目下新建一个lib文件夹,复制需要的那个两个jar包到lib下

3选择 activation.jar和mail.jar,右键添加Build path

4用QQ给QQ发送邮件,发送方得开启第三方登录,也就是授权登录,需要开始POP3和SMTP,还有点击生成授权码,下面是操作截图

5编写Java代码

6运行,最后显示 250 Mail OK即发送成功

7接收方的QQ会收到邮件

如何在 java 发邮件中提供链接?

代码如下:

import java.util.Properties;

import javax.mail.Authenticator;

import javax.mail.Message;

import javax.mail.Message.RecipientType;

import javax.mail.PasswordAuthentication;

import javax.mail.Session;

import javax.mail.Transport;

import javax.mail.internet.InternetAddress;

import javax.mail.internet.MimeMessage;

public class EmailTest {

public static void main(String[] args) throws Exception{

Properties props = new Properties();

props.setProperty("mail.smtp.auth", "true");

props.setProperty("mail.transport.protocol", "smtp");

props.setProperty("mail.host", "smtp.163.com");

Session session = Session.getInstance(props,

new Authenticator() {

protected PasswordAuthentication getPasswordAuthentication(){

return new PasswordAuthentication("xxx","xxx");//这里分别填写发送email的用户名、密码

}

}

);

session.setDebug(true);

Message msg = new MimeMessage(session);

msg.setFrom(new InternetAddress("xxx"));//这里是发送方的email地址如:xxx@163.com

msg.setSubject("test javamail");

msg.setRecipients(RecipientType.TO,

InternetAddress.parse("xxx"));//这里是接收方的email地址如:xxx@163.com

msg.setContent("a href=\"\"谷歌/a","text/html;charset=gb2312");

Transport.send(msg);

}

}


网站栏目:java代码发送邮件 java代码实现发送邮件
文章分享:http://ybzwz.com/article/dohegdh.html