java邮件发送简单实现代码

发布时间 - 2026-01-10 23:28:03    点击率:

本文实例为大家分享了java邮件发送的具体代码,供大家参考,具体内容如下

我用的是maven项目,前台页码不多说,自己传邮箱地址进来就行。

只需要一个类实现,直接复制就可以

package com.mail;

import java.util.Properties;

import javax.mail.Address;
import javax.mail.Message;
import javax.mail.Session;
import javax.mail.Transport;
import javax.mail.internet.InternetAddress;
import javax.mail.internet.MimeMessage;

public class MySendMail {
 /**
 * @param ss
 * @throws Exception
 */
 /*
 * 你只需要往sendMessage(String email)传入的要发送的邮箱对象地址,再改下方法里的发送人信息就可以了
 * 本文发件邮箱标头为“我们是银行”
 */
 public void sendMessage(String email) throws Exception {
 Properties props = new Properties();
 // 开启debug调试
 props.setProperty("mail.debug", "true");
 // 发送服务器需要身份验证
 props.setProperty("mail.smtp.auth", "true");
 // 设置邮件服务器主机名
 props.setProperty("mail.host", "smtp.qq.com");
 // 发送邮件协议名称
 props.setProperty("mail.transport.protocol", "smtp");
 props.setProperty("mail.smtp.socketFactory.class",
  "javax.net.ssl.SSLSocketFactory");
 props.setProperty("mail.smtp.port", "465");
 props.setProperty("mail.smtp.socketFactory.port", "465");
 // 设置环境信息
 Session session = Session.getInstance(props);
 // 创建邮件对象
 Message msg = new MimeMessage(session);
 msg.setSubject("我们是银行");
 // 设置邮件内容
 msg.setText("******这是一封验证邮箱的邮件******\n 如果您有投资的意愿,请回复邮件,我们会有业务员跟您联系!");
 // 设置发件人,并设置标头
 msg.setFrom(new InternetAddress("*****@qq.com", "我们是银行"));
 // 获得链接
 Transport transport = session.getTransport();
 // 连接邮件服务器,这里设置发件人的邮箱和密码。如果是163的邮箱就把"smtp.qq.com"改成"smtp.163.com"
 //其他的同理,不然连接不到邮件服务器
 transport
  .connect("smtp.qq.com", "***@qq.com", "*****密码*******");
 // 发送邮件
 transport
  .sendMessage(msg, new Address[] { new InternetAddress(email) });
 // 关闭连接
 transport.close();
 }
}

注意导的包,是javax.mail的。建议直接复制就可以。
直接运行,去查看你发送的邮箱是否收到就可以了。

可能会出现这个异常:
javax.mail.NoSuchProviderException: Unable to locate provider for protocol: smtp

这是由于jar包冲突造成的,如果你也是maven,则只要添加下面代码就行,在pom.xml中进行添加一下代码。

<dependency>
 <groupId>javax.mail</groupId>
 <artifactId>mail</artifactId>
 <version>1.4.1</version>
</dependency>

<dependency>
 <groupId>javax.activation</groupId>
 <artifactId>activation</artifactId>
 <version>1.0.2</version>
</dependency>

如果还是不能解决,再在pom.xml中加入如下代码

<exclusion>
 <groupId>org.apache.geronimo.specs</groupId>
 <artifactId>geronimo-javamail_1.4_spec</artifactId>
</exclusion>
<exclusion>
 <groupId>org.apache.geronimo.specs</groupId>
 <artifactId>geronimo-activation_1.1_spec</artifactId>
</exclusion>

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。


# java  # 邮件发送  # Java邮件发送程序(可以同时发给多个地址、可以带附件)  # Java HtmlEmail 邮件发送的简单实现代码  # 基于JavaMail的Java实现简单邮件发送功能  # Java实现带附件的邮件发送功能  # JavaWeb实现邮件发送接收功能  # Java实现邮件发送功能  # Java实现邮件发送遇到的问题  # java邮件发送的实现  # JavaMail实现邮件发送的方法  # Java实现简单邮件发送功能  # 就可以  # 这是  # 邮件服务器  # 就行  # 发送邮件  # 的是  # 如果你  # 如果您  # 会有  # 其他的  # 我用  # 看你  # 就把  # 只需要  # 一封  # 多说  # 大家分享  # 具体内容  # 大家多多  # 送人 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: javascript事件捕获机制【深入分析IE和DOM中的事件模型】  今日头条微视频如何找选题 今日头条微视频找选题技巧【指南】  网站制作壁纸教程视频,电脑壁纸网站?  如何在 React 中条件性地遍历数组并渲染元素  Laravel如何处理异常和错误?(Handler示例)  香港服务器WordPress建站指南:SEO优化与高效部署策略  UC浏览器如何设置启动页 UC浏览器启动页设置方法  利用JavaScript实现拖拽改变元素大小  如何在万网主机上快速搭建网站?  如何快速搭建虚拟主机网站?新手必看指南  javascript中闭包概念与用法深入理解  iOS发送验证码倒计时应用  简单实现jsp分页  Laravel如何编写单元测试和功能测试?(PHPUnit示例)  深圳网站制作设计招聘,关于服装设计的流行趋势,哪里的资料比较全面?  Laravel如何使用缓存系统提升性能_Laravel缓存驱动和应用优化方案  手机网站制作平台,手机靓号代理商怎么制作属于自己的手机靓号网站?  如何用JavaScript实现文本编辑器_光标和选区怎么处理  Laravel如何实现全文搜索_Laravel Scout集成Algolia或Meilisearch教程  Python3.6正式版新特性预览  php静态变量怎么调试_php静态变量作用域调试技巧【解答】  如何在IIS管理器中快速创建并配置网站?  JavaScript如何实现类型判断_typeof和instanceof有什么区别  Laravel DB事务怎么使用_Laravel数据库事务回滚操作  Laravel Artisan命令怎么自定义_创建自己的Laravel命令行工具完全指南  今日头条AI怎样推荐抢票工具_今日头条AI抢票工具推荐算法与筛选【技巧】  历史网站制作软件,华为如何找回被删除的网站?  Laravel怎么实现一对多关联查询_Laravel Eloquent模型关系定义与预加载【实战】  JavaScript模板引擎Template.js使用详解  Laravel如何配置.env文件管理环境变量_Laravel环境变量使用与安全管理  Android自定义控件实现温度旋转按钮效果  如何在阿里云完成域名注册与建站?  Laravel如何处理跨站请求伪造(CSRF)保护_Laravel表单安全机制与令牌校验  Laravel怎么使用Markdown渲染文档_Laravel将Markdown内容转HTML页面展示【实战】  Laravel中DTO是什么概念_在Laravel项目中使用数据传输对象(DTO)  如何获取PHP WAP自助建站系统源码?  Laravel数据库迁移怎么用_Laravel Migration管理数据库结构的正确姿势  开心动漫网站制作软件下载,十分开心动画为何停播?  怎么制作一个起泡网,水泡粪全漏粪育肥舍冬季氨气超过25ppm,可以有哪些措施降低舍内氨气水平?  Laravel如何使用Blade组件和插槽?(Component代码示例)  浅谈javascript alert和confirm的美化  深入理解Android中的xmlns:tools属性  Laravel如何生成URL和重定向?(路由助手函数)  悟空识字如何进行跟读录音_悟空识字开启麦克风权限与录音  Laravel如何与Pusher实现实时通信?(WebSocket示例)  长沙企业网站制作哪家好,长沙水业集团官方网站?  如何在万网ECS上快速搭建专属网站?  网页制作模板网站推荐,网页设计海报之类的素材哪里好?  Swift中swift中的switch 语句  Laravel Livewire是什么_使用Laravel Livewire构建动态前端界面