初学JavaMail,写了一个小程序!!!

Servlet 实现邮件发送功能:JavaMail API详解 我们的目的是教大家如何使用 Servlet 和 JavaMail API 实现邮件发送功能。范围涵盖了从核心概念的理解,到具体代码的实现,以及实际应用场景的探讨。本文先介绍核心概念,包括 Servlet 和 JavaMail API;接着讲解核心算法原理和具体操作步骤;再给出数学模型和公式;然后进行项目实战,包括开发环境搭建、代码实现和解读;之后探讨实际应用场景;推荐相关工具和资源;最后展望未来发展趋势与挑战,并进行总结和提出思考题。Servlet。 阅读详情

 1.先将activation.jar和mail.jar两个jar包copy到%java_home%//jdk1.6.0/jre/lib/ext下
2。代码如下:package JMailTest;
/**
 *
 * @author Gavin Johnson
 * @Time 12/20/2006 17:35
 *
 */
import javax.mail.*;
//import javax.activation.*;
import javax.mail.internet.*;
import java.util.Properties;

 class EmailAuthenticator extends Authenticator {
 private String m_username=null;
 private String m_userpass=null;
 void setUserName(String username){
  m_username=username;
 }
 void setUserPass(String userpass){
  m_userpass=userpass;
 }
 EmailAuthenticator (String username,String userpass)
 {
  super();
  setUserName(username);
  setUserPass(userpass);
 }
 public PasswordAuthentication getPasswordAuthentication(){
  return new PasswordAuthentication(m_username,m_userpass);
  }

}
public class newSendemail
{
 public static void main(String args[])
 {
  String host="smtp.163.com";
  String from="from@163.com";
  String to="to@126.com";
  String username="yourname";
  String password="yourpassword";
  EmailAuthenticator mailAuthenticator =new EmailAuthenticator(username,password);
  try{
   Properties props=System.getProperties();
   props.put("mail.smtp.host", host);
   props.put("mail.smtp.auth", "true");
   Session session=Session.getInstance(props,(Authenticator)mailAuthenticator);
   MimeMessage message=new MimeMessage(session);
   message.setFrom(new InternetAddress(from));
   message.addRecipient(Message.RecipientType.TO, new InternetAddress(to));
   message.setSubject("你好JavaMail");
   message.setText("宝宝收到邮件了吗?这个小程序真是有意思啊!!呵呵呵呵");
   message.saveChanges();
   Transport transport=session.getTransport("smtp");
   transport.connect(host, username, password);
   transport.sendMessage(message, message.getAllRecipients());
   transport.close();
   System.out.println("消息已经发送成功!");
   }catch(Exception e){
   e.printStackTrace();
  }
  
  
 }
 }

 

 

注意:1。修改下面五个变量的值。      
                String host="smtp.163.com";
  String from="from@163.com";
  String to="to@126.com";
  String username="yourname";
  String password="yourpassword";
      2。这个小程序可以实现不同邮件服务器之间发送邮件(我刚刚测试过的!!)
      3。最简单的测试方法就是把from和to都添为你自己的邮箱地址
希望我的这第一篇在csdn上发表的文章能帮助正在苦苦摸索的兄弟们!!!!

一个坑人的小程序 能让当前运行的窗口不停地抖能让当前运行的窗口不停地抖 立即下载

相关推荐

NVIDIA Video Codec SDK-解码接口cuvid简介

特性已废弃的 NVCUVID现代的 NVDECODE (底层 API)现代的 NVDECODE (高层 API - NvDecoder)状态已废弃 (Deprecated)官方推荐 (底层控制)官方推荐 (易用性首选)编程模型C 函数C 函数C++ 类复杂度高,需要管理大量细节中高,仍需管理解码会话低,开箱即用灵活性高高中(满足绝大多数场景)推荐对象遗留项目维护需要极致控制的高级用户所有新项目、大多数开发者。

fudexiang的博客 1176

java的一些小程序例子--3

输入两个实数,按照从小到大的顺序输出这两个数 import java.util.Scanner;   public class b{  public static void main(String[] args){  Scanner sc=new Scanner(System.in);  double a,b;  a=sc.nextDouble();b=sc.nextDouble();

hacker97 686

单细胞测序流程(八)单细胞的marker基因转化和​GO富集分析

系列文章目录 单细胞测序流程(一)简介与数据下载 单细胞测序流程(二)数据整理 单细胞测序流程(三)质控和数据过滤——Seurat包分析,小提琴图和基因离差散点图 单细胞测序流程(四)主成分分析——PCA 单细胞测序流程(五)t-sne聚类分析和寻找marker基因 单细胞测序流程(六)单细胞的细胞类型的注释 单细胞测序流程(七)单细胞的细胞类型轨迹分析———————————————— 本期主讲内容——单细胞的maeker基因转化和​富集分析 marker基因转化是为了将基因的id和基.

qq_45478665的博客 1万+

一个用java发送邮件的简单小程序

写了一个用java发送邮件的小程序留着以后

血色流年的专栏 2603

Spring Boot日志可视化实战:5分钟搞定Promtail采集与Grafana查询(避坑指南)

本文详细介绍了如何通过Promtail和Grafana实现Spring Boot日志的可视化查询,提供从日志采集到高效查询的全流程实战指南,重点解决部署中的常见问题。内容包括Logback配置、Promtail日志采集、Grafana的LogQL查询技巧及生产环境优化建议,帮助开发者快速定位和解决日志问题。

weixin_42526015的博客 106

IAR安装成功的关键:STM32设备支持文件导入方法

IAR安装常卡在设备支持缺失这一步——尤其对STM32新手,没导入对应芯片包,编译直接报错。实测发现,必须通过IAR的Tools→Options→IDE→Configuration→Device Support手动加载STM32设备支持文件,否则新建工程时连芯片型号都选不到。IAR安装是否顺利,往往就差这一步。

weixin_42527589的博客 680

一个JAVA 程序员的告白

http://www.chinaunix.net 作者:tfpcnhn??发表于:2003-09-26 17:06:15如何迅速成为Java高手[Tomjava原创]? 很多网友问我学习Java有没有什么捷径,我说“无他,唯手熟尔”。但是我却很愿意将自己学习的一些经验写出来,以便后来者少走弯路,帮助别人是最大的快乐嘛!? ??要想学好Java,首先要知道

783

避坑指南:C#调用CodeSoft打印标签时常见的5个错误及解决方法

本文总结了C#调用CodeSoft打印标签时常见的5个核心错误及解决方案,涵盖环境配置、模板加载、变量赋值、打印机切换和资源管理。重点解析了如何避免COM对象创建失败、模板路径错误、变量名不匹配、打印机切换异常及内存泄漏等问题,帮助开发者实现稳定高效的标签打印集成。

weixin_29215815的博客 223

JavaEE复习资料(二)

JavaEE复习资料 题型:简答、程序填空、写小程序 一.简答题 1.什么是JavaEE? 1)JavaEE是一个标准中间件体系结构 2)JavaEE是企业分布式应用开发标准 2. JavaEE的设计思想? JavaEE为满足开发多层体系结构的企业级应用的需求,提出了”组件—容器”的编程思想。 3.简述JavaEE里面所包括的主要技术? JavaEE里主要技术包括 :组件技术、服务技术 、通信技术。 4.描述一下如何去构建一个JavaEE的开发环境? 搭建一个基于JDK+NetBeans IDE配置的J

goodgds的博客 583

YOLOv12 改进 | Backbone改进 3

将CSP中的简单拼接改为可学习的特征选择门控,动态决定哪些特征流向下一层,同样再写这篇。:相比静态CSP的固定50/50分割,门控机制可学习0.3:0.7等最优比例。在输入端加入轻量SR模块,对下采样后的特征进行超分恢复,提升小目标检测能力。(小目标): 从 0.51 AP → 0.63 AP (+24%):采用ESPCN的高效亚像素卷积,避免传统插值的信息损失。:从通道级(SE)到空间级(Spatial)的多粒度控制。:结合浅层细节和深层语义,恢复小目标的纹理信息。

u012133341的博客 840

Cadence OrCAD Capture原理图中为功能模块分配ROOM的方法

本文详解介绍原理图设计阶段为原理图模块分配ROOM的方法。

fydar的博客 1345

如何学好java之初学JAVA,至少应做到以下几点

1.时刻提醒自己Java是一种OOP语言工具,而不仅仅是编码,只有这样才能总体把握和运用Java。 2.在学习的过程中,最好能够了解Java的底层机制,而不是仅仅停留在表层,不是抄书上的例子运行出结果就可以。要注意,即便对一个简单的例子也要有耐心去琢磨、调试、改动。 3.在学习的过程中一定要动手做、写代码,而不是抱一本书看看就行。很多东西和体会必须自己动手才能真正属于自己,最好能参与一些实际的

lianjinglei的专栏 493

【踩坑记录】pandas.to_sql 报 “‘Engine‘ object has no attribute ‘cursor‘”,最后竟然是环境问题

摘要 本文记录了使用pandas+SQLAlchemy+pymysql将数据写入MySQL时遇到的"Engine对象无cursor属性"错误及其解决方案。问题表现为to_sql方法将SQLAlchemy引擎误认为普通DBAPI连接,导致调用cursor()方法失败。经排查发现,这是由于pandas/SQLAlchemy环境损坏所致,而非代码问题。最终通过完全卸载并重新安装pandas(≥2.1)、SQLAlchemy(≥2.0)和pymysql解决了该问题。文章还建议将遗留的read_s

每日出拳老爷子的博客 336

一个java程序员的成长历程(转载)

很多网友问我学习Java有没有什么捷径,我说“无他,唯手熟尔”。但是我却很愿意将自己学习的一些经验写出来,以便后来者少走弯路,帮助别人是最大的快乐嘛!    要想学好Java,首先要知道Java的大致分类。我们知道,自从Sun推出Java以来,就力图使之无所不包,所以Java发展到现在,按应用来分主要分为三大块:J2SE,J2ME和J2EE,这也就是Sun ON(Open Net Environm

guestleib的专栏 344

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

java新手任何学习java(转载)

java新手任何学习java(转载) 要想学好java,首先要知道java的大致分类。j2se就是java2的标准版,主要用于桌面应用软件的编程;j2me主要应用于嵌入是系统开发,如手机和pda的编程;j2ee是java2的企业版,主要用于分布式的网络程序的开发,如电子商务网站和erp系统。j2se开发桌面应用软件比起vc,vb,dephi这些传统开发语言来说,优势好象并不明显。j2me对于初学

javazhuanzai的专栏 371

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

Java 邮件学习

<br />这个学期学了Java,按照惯例,要做一个课程设计。我选上了用Java写一个邮件小程序,原因是这个小程序比较实用也好玩,自己写出个东东,发发邮件觉着很有成就感。于是就动手做起来。<br />想我这种啥都不懂的,怎么开始着手呢?很自然的我想到了Google这小子。<br />Google了好久,找了N多的代码,埋起头就读。貌似有点感觉了,就自己试着照葫芦画瓢写了一个Demo。一点运行,居然抛异常,这时的我,心拔凉拔凉的。于是乎直接Copy,令人沮丧的是,居然Copy的也跑不起来。<br />我彻底慌

wucoke的专栏 349

VC中sqlite的使用

在VC中对sqlite的使用,实现数据库大批数据的快速插入,读取数据库中的数据在ListCtrl中显示

如何迅速成为Java高手

i/o包,util包,lang包,jsp(html中嵌入java代码) ,servlet(java逻辑,生成html代码),javabean(将jsp中的java代码封装),ejb(企业级javabean),jdbc(数据库),javamail(email收发)zj3j0 \.n 要想学好java,首先要知道java的大致分类。我们知道,自从sun推出java以来,就力图使之无所不包,所以ja

javazhuanzai的专栏 247

一个JAVA程序员的成长经历

很多网友问我学习Java有没有什么捷径,我说"无他,唯手熟尔".但是我却很愿意将自己学习的一些经验写出来,以便后来者少走弯路,帮助别人是最大的快乐嘛!要想学好Java,首先要知道Java的大致分类.我们知道,自从Sun推出Java以来,就力图使之无所不包,所以Java发展到现在,按应用来分主要分为三大块:J2SE,J2ME和J2EE,这也就是Sun ONE(Open Net Environ...

weixin_34072637的博客 362

如何用java实现使用电子邮件控制你的电脑

上两天看到一篇文章,用python实现电子邮件控制电脑的有趣的小程序 python 实现微信控制电脑     python版的视频教程 但是苦于自己没接触过python于是想到能不能用java实现,于是写了个java版本的 一开始想用socket连接邮件服务器的,但是比较麻烦,于是找了个易用的方法,使用javamail 一、学会使用javamail 首先我们得实现

xiaoduc的专栏 1333

推荐一篇关于java 学习的文章,感觉写的很不错

---恢复内容开始--- 很多网友问我学习Java有没有什么捷径,我说“无他,唯手熟尔”。但是我却很愿意将自己学习的一些经验写出来,以便后来者少走弯路,帮助别人是最大的快乐嘛! 要想学好Java,首先要知道Java的大致分类。我们知道,自从Sun推出Java以来,就力图使之无所不包,所以Java发展到现在,按应用来分主要分为三块:J2SE,J2ME和J2EE, 这也就是SunON...

weixin_30698527的博客 153

一个java程序员的成长历程

很多网友问我学习Java有没有什么捷径,我说“无他,唯手熟尔”。但是我却很愿意将自己学习的一些经验写出来,以便后来者少走弯路,帮助别人是最大的快乐嘛!   要想学好Java,首先要知道Java的大致分类。我们知道,自从Sun推出Java以来,就力图使之无所不包,所以Java发展到现在,按应用来分主要分为三大块:J2SE,J2ME和J2EE,这也就是Sun ONE(Open Net Environ

linwei_hello的专栏 715

java在电脑上怎么用_如何用java实现使用电子邮件控制你的电脑

上两天看到一篇文章,用python实现电子邮件控制电脑的有趣的小程序但是苦于自己没接触过python于是想到能不能用java实现,于是写了个java版本的一开始想用socket连接邮件服务器的,但是比较麻烦,于是找了个易用的方法,使用javamail一、学会使用javamail首先我们得实现用java实现收发邮件的功能,通过查了资料,我们需要学习javamail,Javamail开发需要用到以下两...

weixin_35876760的博客 147

解道。。。好网站

http://www.jdon.com/ JAVA程序员之路  很多网友问我学习Java有没有什么捷径,我说“无他,唯手熟尔”。但是我却很愿意将自己学习的一些经验写出来,以便后来者少走弯路,帮助别人是最大的快乐嘛!  要想学好Java,首先要知道Java的大致分类。我们知道,自从Sun推出Java以来,就力图使之无所不包,所以Java发展到现在,按应用来分主要分为三大块:J2SE

lanchengxiaoxiao的专栏 1049
下一篇: 封装ibm流程和人工任务api
igate
博客等级 码龄20年 3粉丝 8原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值