SMTP:simple message transfer protocol 发送协议,默认端口:25
POP:post office protocol 邮局协议。POP3 这个版本用的最多,接受协议,默认端口:110
JavaMail 的使用:
导包:
mail.jar
spring整合javaMail : spring-context-support jar
传统邮件开发:
public void TestMail() throws Exception{
Properties props = new Properties();
props.put("mail.smtp.host[a1] ", "localhost[a2] ");
props.put(“mail.smtp.auth”, “true”);
//props.put(“mail.debug”,“true”);//显示应答信息
Session session = Session.getInstance(props)[a3] ;
//session.setDebug(true)[a4] ; //显示应答信息
//构造信息体
MimeMessage message = new MimeMessage(session);
//发送邮件地址
Address address = newInternetAddress(“Admin@yan.com”);
message.setFrom(address);
//收件人地址
Address toAddress = new InternetAddress(“tom@yan.com”);
message.setRecipient(MimeMessage.RecipientType.TO, toAddress);
//主题
message.setSubject(“Helloword”);
message.setText(“hei heihei”);
message.saveChanges();
Transport transport = session.getTransport(“smtp”);[a5]
transport.connect(“localhost”,“Admin@yan.com”, “123”);
transport.sendMessage(message, message.getAllRecipients());//发送
transport.close();[a6]
}
核心类:
Session 设置服务器的参数
MimeMessage 构造信息体设置发件人收件人邮箱,以及要发送的内容
Transport 发送信息的类
可以把该类抽取成一个工具类
Spring整合javaMail
配置mail.properties
mail.username=Admin@yan.com
mail.password=123
内容视情况配置
配置applicationContext-mail.xml
<context:property-placeholder location=“classpath:mail.properties”/>
<bean id="simpleMailMessage"class="org.springframework.mail.SimpleMailMessage[a7] ">
<property name=“from"value=”${mail.from}[a8] "></property>
</bean>
<bean id="javaMailSenderImpl"class=“org.springframework.mail.javamail.JavaMailSenderImpl”>
<property name=“username"value=”${mail.username}"/>
<property name=“password"value=”${mail.password}"/>
<property name=“host"value=”${mail.host}"/>
<property name=“defaultEncoding"value=”${mail.encode}"/>
<property name=“javaMailProperties”>
<props>
<prop key=“mail.smtp.auth”>${mail.smtp.auth}</prop>
<prop key=“mail.debug”>${mail.debug}</prop>
<prop key=“mail.smtp.timeout”>${mail.smtp.timeout}</prop>
</props>
</property>
</bean>
Spring整合了javaMail所以有些方法不一样
普通邮件的发送:
SimpleMailMessage message = (SimpleMailMessage) context.getBean(“simpleMailMessage”);//加载邮件对象
JavaMailSenderImpl sender = (JavaMailSenderImpl) context.getBean(“javaMailSenderImpl”);//创建发送对象
//设置发送信息
message.setSubject(“主题”);
message.setText(“内容”);
message.setTo(“收件人邮箱”);
//发送邮件
sender.send(message);
复杂邮件的发送:
自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。
深知大多数Java工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!
因此收集整理了一份《2024年Java开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Java开发知识点,真正体系化!
由于文件比较大,这里只是将部分目录截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且会持续更新!
如果你觉得这些内容对你有帮助,可以扫码获取!!(备注Java获取)
最后
手绘了下图所示的kafka知识大纲流程图(xmind文件不能上传,导出图片展现),但都可提供源文件给每位爱学习的朋友
《互联网大厂面试真题解析、进阶开发核心学习笔记、全套讲解视频、实战项目源码讲义》点击传送门即可获取!
cn/images/e5c14a7895254671a72faed303032d36.jpg" alt=“img” style=“zoom: 33%;” />
最后
手绘了下图所示的kafka知识大纲流程图(xmind文件不能上传,导出图片展现),但都可提供源文件给每位爱学习的朋友
[外链图片转存中…(img-Cl59xVIG-1712596654901)]
《互联网大厂面试真题解析、进阶开发核心学习笔记、全套讲解视频、实战项目源码讲义》点击传送门即可获取!