求java代码编程代码,可以的话直接发邮箱里

Java 实现简单的邮件发送
& 新项目中需要实现将数据采集结果自动发送到指定邮箱的功能,由于Java不是很懂,网上一番搜索和借鉴之后,弄了一个简单的邮件发送功能,当做是java入门学习吧,初步验证,邮件能正常发送。
代码添加后,由于所选的JDK版本(jdk-7u5-windows-i586)安装后,附带JRE库中没有包含mail.jar,程序运行出错。 mail.jar额外下载之后,在eclipse 中: project --&properties--&java Build Path 下点击 Add External JARs...指定存放路径添加即可。
import java.util.D&
import java.util.P&
import javax.mail.A&
import javax.mail.A&
import javax.mail.M&
import javax.mail.PasswordA&
import javax.mail.S&
import javax.mail.T&
import javax.mail.internet.InternetA&
import javax.mail.internet.MimeM&
public class mail_test&
&&& //mail server&
&&& private String host = &&;&
&&& //mail account&&
&&& private String username = &xxxxxxx&;&
&&& //password&
&&& private String password = &xxxxxxx&;&
&&& private String mail_head_name = &Head of test mail&;&
&&& private String mail_head_value = &Head of test mail&;&
&&& private String mail_to = ;&
&&& private String mail_from = &&;&
&&& private String mail_subject = &subject of test mail&;&
&&& private String mail_body = &content of of test mail&;&
&&& private String personalName = &test_mail!&;&
&&& public mail_test()&
&&& public void send() throws Exception&
&&&&&&& try&
&&&&&&& {&
&&&&&&&&&&& Properties props = new Properties(); // 获取环境&
&&&&&&&&&&& Authenticator auth = new Email_Autherticator(); // 认证&
&&&&&&&&&&& props.put(&mail.smtp.host&, host);&
&&&&&&&&&&& props.put(&mail.smtp.auth&, &true&);&
&&&&&&&&&&& Session session = Session.getDefaultInstance(props, auth);&
&&&&&&&&&&& //设置session,和邮件服务器进行通讯。&
&&&&&&&&&&& MimeMessage message = new MimeMessage(session);&
&&&&&&&&&&&
&&&&&&&&&&& message.setSubject(mail_subject);&&
&&&&&&&&&&& message.setText(mail_body); // 设置邮件正文&
&&&&&&&&&&& message.setHeader(mail_head_name, mail_head_value); // 设置邮件标题&
&&&&&&&&&&& message.setSentDate(new Date()); // 设置邮件发送日期&
&&&&&&&&&&& Address address = new InternetAddress(mail_from, personalName);&
&&&&&&&&&&& message.setFrom(address); // 设置邮件发送者的地址&
&&&&&&&&&&& Address toAddress = new InternetAddress(mail_to); // 设置邮件接收方的地址&
&&&&&&&&&&& message.addRecipient(Message.RecipientType.TO, toAddress);&
&&&&&&&&&&& Transport.send(message); // 发送邮件&
&&&&&&&&&&& System.out.println(&send over!&);&
&&&&&&& } catch (Exception ex)&
&&&&&&& {&
&&&&&&&&&&& ex.printStackTrace();&
&&&&&&&&&&& throw new Exception(ex.getMessage());&
&&&&&&& }&
&&&& * 用来进行服务器对用户的认证
&&& public class Email_Autherticator extends Authenticator&
&&&&&&& public Email_Autherticator()&
&&&&&&& {&
&&&&&&&&&&& super();&
&&&&&&& }&
&&&&&&& public Email_Autherticator(String user, String pwd)&
&&&&&&& {&
&&&&&&&&&&& super();&
&&&&&&&&&&& username =&
&&&&&&&&&&& password =&
&&&&&&& }&
&&&&&&& public PasswordAuthentication getPasswordAuthentication()&
&&&&&&& {&
&&&&&&&&&&& return new PasswordAuthentication(username, password);&
&&&&&&& }&
&&& public static void main(String[] args)&
&&&&&&& mail_test sendmail = new mail_test();&
&&&&&&& try&
&&&&&&& {&
&&&&&&&&&&& sendmail.send();&
&&&&&&& } catch (Exception ex)&
&&&&&&& {&
&&&&&&& }&
程序编译运行之后,eclipse里console中显示:send over!表明测试邮件已成功发送。
作者:saloon_yuan
(window.slotbydup=window.slotbydup || []).push({
id: '2467140',
container: s,
size: '1000,90',
display: 'inlay-fix'
(window.slotbydup=window.slotbydup || []).push({
id: '2467141',
container: s,
size: '1000,90',
display: 'inlay-fix'
(window.slotbydup=window.slotbydup || []).push({
id: '2467143',
container: s,
size: '1000,90',
display: 'inlay-fix'
(window.slotbydup=window.slotbydup || []).push({
id: '2467148',
container: s,
size: '1000,90',
display: 'inlay-fix'求0基础的java入门书籍 有的话可以发我邮箱谢谢了!-中国学网-中国IT综合门户网站-提供健康,养生,留学,移民,创业,汽车等信息
> 信息中心 >
求0基础的java入门书籍 有的话可以发我邮箱谢谢了!
来源:互联网 发表时间: 20:20:34 责任编辑:王亮字体:
为了帮助网友解决“求0基础的java入门书籍 有的话可以发我邮箱谢谢了!”相关的问题,中国学网通过互联网对“求0基础的java入门书籍 有的话可以发我邮箱谢谢了!”相关的解决方案进行了整理,用户详细问题包括:RT,我想知道:求0基础的java入门书籍 有的话可以发我邮箱谢谢了!,具体解决方案如下:解决方案1: 疯狂JAVA-李刚& 很不错的一本入门书籍建议买实体书看
相关文章:
最新添加资讯
24小时热门资讯
Copyright © 2004- All Rights Reserved. 中国学网 版权所有
京ICP备号-1 京公网安备02号求 java api 1.6 帮助文档全中文版,有的话麻烦发到我邮箱,谢谢_百度知道
求 java api 1.6 帮助文档全中文版,有的话麻烦发到我邮箱,谢谢
提问者采纳
“自强才是王道”,嘿嘿
提问者评价
实在是太感谢啦
其他类似问题
为您推荐:
帮助文档的相关知识
其他3条回答
有Java API的帮助文档:qq:,我给你发
百度一大堆
已发送,请查收
等待您来回答
下载知道APP
随时随地咨询
出门在外也不愁在做注册时需要填写邮箱。然后就会发到邮箱一个链接,点击链接才能是会员。用java是怎么实现发送链接的,求源代码。 - Java Web开发当前位置:& &&&在做注册时需要填写邮箱。然后就会发到邮箱一个链接在做注册时需要填写邮箱。然后就会发到邮箱一个链接,点击链接才能是会员。用java是怎么实现发送链接的,求源代码。&&网友分享于:&&浏览:203次在做注册时需要填写邮箱。然后就会发到邮箱一个链接,点击链接才能是会员。用java是如何实现发送链接的,求源代码。在线等。跪求高手指点。。。------解决方案--------------------/blog/456837 参考下这个 其实就是邮件格式换成HTML类型的而已body.append(&&a
href=\&http://mti-usb/PASI/Rej_Info/pasiEditPERej.jsp?id=&+id+&\&&&FONT
size=\&3\&&&b&點此進入&/b&&/FONT&&/a&&); 1、setText()有一个重载方法,第二参数为true表示用html展现public void setText(String text, boolean html)2、message应该是MimeMessage类型,而不是TextMessage类型
------解决方案--------------------先确定下:楼主会不会用Java来发送邮件的?发送邮件其实不复杂,有成熟的组件包:JavaMail,参见: /art/283.htm另外个问题是生成链接,这个更简单,因为邮件的正文本身就可以是一个HTML文档,你应该会写: &a href=&xxxxxxxxxxxxxx&&请点击此链接激活您的帐户&/a&
------解决方案--------------------邮件支持html格式,你只要在邮件正文里写上链接就可以了。
------解决方案--------------------之前有帖子javamail发送带超链接的邮件的例子。http://topic.csdn.net/u//ecc0f65d--bfbc-bc.html
------解决方案--------------------Java code
import java.util.P
import javax.mail.A
import javax.mail.M
import javax.mail.Message.RecipientT
import javax.mail.PasswordA
import javax.mail.S
import javax.mail.T
import javax.mail.internet.InternetA
import javax.mail.internet.MimeM
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&, &&);
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地址如:
msg.setSubject(&test javamail&);
msg.setRecipients(RecipientType.TO,
InternetAddress.parse(&xxx&));//这里是接收方的email地址如:
msg.setContent(&&a href=\&\&&谷歌&/a&&,&text/charset=gb2312&);
Transport.send(msg);
------解决方案--------------------Jar包引进去了没有!
------解决方案--------------------
应该还有吧??
12345678910
12345678910
12345678910 上一篇:下一篇:文章评论相关解决方案 12345678910 Copyright & &&版权所有java实现发送邮件工具
java实现发送邮件的功能:首先需要导入mail.jar;
然后需要写发送方法:
1、邮箱发送封装工具类:
package com.wxjiameng.
import java.util.D
import java.util.P
import javax.activation.DataH
import javax.activation.FileDataS
import javax.mail.A
import javax.mail.BodyP
import javax.mail.M
import javax.mail.MessagingE
import javax.mail.M
import javax.mail.S
import javax.mail.T
import javax.mail.internet.InternetA
import javax.mail.internet.MimeBodyP
import javax.mail.internet.MimeM
import javax.mail.internet.MimeM
import javax.mail.internet.MimeU
import org.apache.log4j.L
* @类编号:
* @类名称:EmailsUtils
* @内容摘要: 发送邮件
* @author:鹿伟伟
* @创建日期:日 下午6:06:15
* @修改人:
* @修改日期:
* @修改描述:简单描述修改的内容
* @version 1.0.0
public class EmailsUtils {
public static Logger logger = Logger.getLogger(EmailsUtils.class);
//Multipart对象,邮件内容,标题,附件等内容均添加到其中后再生成MimeMessage对象
Multipart mp = new MimeMultipart();
final String CHAR_SET = &UTF-8&;
* @Description:
* @param EmailParaForm 发件人等发送邮件参数
* @author: YuPeng
下午5:13:36
boolean SendEmails(EmailParaForm emailParaForm){
boolean isSucc =
if (emailParaForm == null){
return isS
//Mail需要Properties来创建一个session对象。它将寻找字符串&mail.smtp.host&,属性值就是发送邮件的主机.
//Properties对象获取诸如邮件服务器、用户名、密码等信息,以及其他可在整个应用程序中 共享的信息。
Properties props=new Properties();//也可用Properties props = System.getProperties();
props.put(&mail.smtp.host&,emailParaForm.getStmpHost());//存储发送邮件服务器的信息
props.put(&mail.smtp.port&, && + emailParaForm.getTport()); // 端口号
props.put(&mail.transport.protocol&,emailParaForm.getProtocol());
props.put(&mail.smtp.auth&,emailParaForm.getNeedAuth());//同时通过验证
if (null != emailParaForm.getAgentIp() && emailParaForm.getAgentIp().length() != 0 && !emailParaForm.getAgentIp().equals(&0&)) {
props.put(&mail.agentIp&, emailParaForm.getAgentIp());
if (null != emailParaForm.getAgentPort() && emailParaForm.getAgentPort().length() != 0 && !emailParaForm.getAgentPort().equals(&0&)) {
props.put(&mail.agentPort&, emailParaForm.getAgentPort());
//方法二:(如果是在weblogin配置JavaMail:则需指定JNDI名检索
//Context ctx=new InitialContext();
//Session s=(Session)ctx.lookup(&MailSession&);
//Message msg=new MimeMessage(s);
//这个Session类代表JavaMail 中的一个邮件session. 每一个基于 JavaMail的应用程序至少有一个session但是可以有任意多的session。
//Session类定义全局和每个用户的与邮件相关的属性。这此属性说明了客房机和服务器如何交流信息。
//Authenticator也是一个抽象类,你需要自己编写子类已备应用。
Session s = Session.getInstance(props,null);//根据属性新建一个邮件会话,null参数是一种Authenticator(验证程序) 对象
String isDebug = emailParaForm.getIsDebug();
if (isDebug != null && isDebug.trim().equalsIgnoreCase(&true&)){
s.setDebug(true);//设置调试标志,要查看经过邮件服务器邮件命令,可以用该方法
一旦创建了自己的Session对象,就是该去创建要发送的消息的 时候了。这时就要用到消息类型(MimeMessage是其中一种类型)。
// Message对象将存储我们实际发送的电子邮件信息,Message对象被作为一个MimeMessage对象来创建并且需要知道应当选择哪一个JavaMail session。
Message类表示单个邮件消息,它的属性包括类型,地址信息和所定义的目录结构。
Message message=new MimeMessage(s);//由邮件会话新建一个消息对象
//message.setContent(&hello&,&test/plain&);//设置消息的内容类型,如果发送的格式有HTML格式就必须设置,
//message.setText(&Hello&);//发送一般文本格式的消息
//设置邮件,一旦您创建了 Session 和 Message,并将内容填入消息后,就可以用Address确定信件地址了。
//如果想让一个名字出现在电子邮件地址后,也可以将其传递给构造器:
//Address from=new InternetAddress(&&,&qdison&);//发件人的邮件地址
Address from=new InternetAddress(emailParaForm.getTfrom());//发件人的邮件地址
message.setFrom(from);//设置发件人
Address to=new InternetAddress(emailParaForm.getTto());//收件人的邮件地址
message.setRecipient(Message.RecipientType.TO,to);//设置收件人,并设置其接收类型为TO,还有3种预定义类型如下:
//Message.RecipientType.TO  收件人
//Message.RecipientType.CC  抄送
//Message.RecipientType.BCC  暗送
message.setSubject(emailParaForm.getTtitle());//设置主题
message.setSentDate(new Date());//设置发信时间
setBody(emailParaForm.getTcontent());
fileAttachment
&C:\\测试\\中国.txt&;
//添加附件
String fileAttachments = emailParaForm.getFileAttachments();
if(null!=fileAttachments){
String[] fileAttArr = fileAttachments.split(&;&);
for (int i = 0; i & fileAttArr. i++){
String fileAtt = fileAttArr[i];
addFileAffix(fileAtt);
message.setContent(mp);
message.saveChanges();//存储邮件信息
// Transport 是用来发送信息的,
// 用于邮件的收发打操作。
Transport transport=s.getTransport(emailParaForm.getProtocol());
transport.connect(emailParaForm.getStmpHost(),emailParaForm.getUserName(),emailParaForm.getPassword());//以smtp方式登录邮箱
transport.sendMessage(message,message.getAllRecipients());//发送邮件,其中第二个参数是所有已设好的收件人地址
transport.close();
} catch(MessagingException e){
logger.error(e);
e.printStackTrace();
return isS
* 邮件添加附件
* @param filePath 包括路径名的完整本地文件名
* @return boolean
public boolean addFileAffix(String filePath) {
BodyPart bp = new MimeBodyPart();
FileDataSource fileds = new FileDataSource(filePath);
bp.setDataHandler(new DataHandler(fileds));
String fileNm = fileds.getName();
bp.setFileName(MimeUtility.encodeText(fileNm));
mp.addBodyPart(bp);
catch (Exception e) {
logger.error(e);
System.err.println(&Affix& + filePath + &accour error& + e);
* 设置邮件内容
* @param body 邮件内容
* @return boolean
boolean setBody(String body) {
BodyPart bp = new MimeBodyPart();
bp.setContent(&& + body, &text/;charset=& + CHAR_SET);
mp.addBodyPart(bp);
} catch (Exception e) {
logger.error(e);
System.err.println(&set mail body is error& + e);
* 发送邮件
* @param receiveUser 接收人
* @param title 标题
* @param content 内容
* 返回true则发送成功,false发送失败
boolean send(String receiveUser,String title,String content){
boolean isSucc =
EmailParaForm spForm = new EmailParaForm();
spForm.setId(&FFFFFF&);
spForm.setTfrom(&***@&); // 发出者邮箱
spForm.setStmpHost(&&); // 邮箱类型
spForm.setNeedAuth(&true&);//是否需要认证
spForm.setIsDebug(&false&); //调试
spForm.setProtocol(&smtp&); //协议
spForm.setUserName(&***@&);//用户名
spForm.setPassword(&****&);//密码
spForm.setTport(&25&);//端口。默认发出
spForm.setTto(receiveUser);
spForm.setTcontent(content);
spForm.setTtitle(title);
String formPass = spForm.getPassword();
if (formPass != null ){
isSucc=SendEmails(spForm);
return isS
public static void main(String[] args){
EmailsUtils e = new EmailsUtils();
e.send(&**@qq.com&, &维基百科&, &自由的百科全书:维基百科是一个内容自由、任何人都能参与、并有多种语言的百科全书协作计划...&);
2、邮箱发送信息实体类:
package com.wxjiameng.
public class EmailParaForm {
//收件人,以分号分隔
//发送邮件服务器
private String stmpH
//接受邮件服务器
private String popH
//是否需要认证
private String needA
//验证类名
//private String authClassNm;
private String isD
//抄送,以分号分隔
//暗送,以分号分隔
//多附件以分号分隔
private String fileA
private String userN
//代理服务器IP
private String agentIp;
//代理服务器端口号
private String agentP
//weblogin配置JavaMail:则需指定JNDI名检索
private String jndiNm;
//接收协议
//发送邮件服务器端口
//接收邮件服务器端口
//set get方法
在使用的时候会出现以下异常:
需要检查发送者的邮箱是否开通pop3/smtp权限,开通后即可发送成功;不明白可以私信给我,相互学习!
(window.slotbydup=window.slotbydup || []).push({
id: '2467140',
container: s,
size: '1000,90',
display: 'inlay-fix'
(window.slotbydup=window.slotbydup || []).push({
id: '2467141',
container: s,
size: '1000,90',
display: 'inlay-fix'
(window.slotbydup=window.slotbydup || []).push({
id: '2467143',
container: s,
size: '1000,90',
display: 'inlay-fix'
(window.slotbydup=window.slotbydup || []).push({
id: '2467148',
container: s,
size: '1000,90',
display: 'inlay-fix'}

我要回帖

更多关于 java代码 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信