使用Spring 发送 Email !!!!
邮件服务器:
邮件服务器提供了邮件系统的基本结构,包括邮件传输,邮件分发,邮件存储等功能,以确保邮件能够发送到互联网中的任意地方。
邮件服务器就像我们生活中的邮局,为人们提供邮件服务。要保证邮件被正确传输和接收,需要统一规则的支持,这就是邮件协议。
邮件协议主要包括:SMTP,POP3,IMAP等。
(1)SMTP:全称是Simple Mail Transfer Protocol即简单邮件传输协议。SMTP是用于发送电子邮件的协议。例如我们平时使用
Outlook,Outlook Express 来发送邮件的时候,就是使用它把本机的邮件发送到已经注册邮箱的服务器上(163.Google.Hotmail等)
然后由邮件服务器再把邮件发送出去。SMTP确保客户端与邮件服务器之间可以高效的传输邮件
(2)POP3:全称是Post Office Protocol 3,即邮局协议的第三个版本。POP3是用于接收邮件服务器的标准协议,类似于现实生活中
我们去邮局取包裹。POP3允许用户从服务器上把邮件存储到本地计算机上,同时根据用户的操作删除或保存在邮件服务器上收邮件。‘
(3)IMAP:全称是Internet Message Access Protocol,即互联网消息访问协议。IMAP是一个应用层协议,用来从本地的客户端
访问远程服务器上的邮件,是POP3的替代协议。
这三种协议在传输时都是使用明文传输的,为了提高安全性可以通过SSL(Secure Sockets Layer 安全套接层)进行加密传输。因此
这三种协议都有SSL加密传输协议分别是SMTPS,POP3S,IMAPS。
搭建James 邮件服务器
James是Apache的一个开源项目,纯Java实现。Apache James Server作为一个企业级的邮件服务器,对SMTP,POP3,IMAP等邮件协议
提供完整的支持。我们可以通过其来搭建自己的邮件服务器。
现在开始我们快速的来搭建一下James邮件服务器
(1)首先我们将下载的apache-james-2.3.2.zip解压
如图在James的bin目录中包含两个重要的文件 run.bat 和 run.sh,运行run.bat就可以启动James邮件服务器,在启动之前要确保JDK环境
和Java_Home已经配置好。James启动时SMTP服务默认在25端口启动。POP3服务默认在110端口启动,NNTP(Network News TransferProtocol
网络新闻传输协议)服务默认在119端口启动。
在James的apps\james\SAR-INF目录下,有一个config.xml文件,这就是James核心配置文件。注意初次启动不会有这个文件,只有当James服务启动一次
之后才会自动构建这个文件。在默认配置下邮件服务器的域名为localhost我们可以修改config.xml文件将其修改为自定义的名称。打开config.xml文件 修改
<servernames autodetect="true" autodetectIP="true">
<servernames>localhost</servernames>
</servernames>
<!-- 修改后--> <servernames autodetect="true" autodetectIP="true">
<servernames>mail.com</servernames>
</servernames>
创建用户账号(采用telnet的方式来添加用户)
使用telnet连接James的Remote Administration Tool。打开一个控制台窗口输入telnet localhost 4555并按 Enter键
注意:win7,telnet服务默认是关闭的,可以通过控制面板---------->卸载或更改程序---------->打开或关闭windows功能进行设置
登陆
系统默认的管理员用户名为root 密码也为root 输入后显示欢迎表示登陆成功
添加用户
语法:adduser[ username ][ password]
查看当前用户
语法:listusers 即可查询当前有哪些用户。
简单的服务我们就搭建成功了
使用Spring 发送 Email !!!!的更多相关文章
- Spring 发送 Email
本文转自:http://zl198751.iteye.com/blog/757617 看到了本文,收获颇丰,感谢之至! 首先介绍下Email的发送流程: 需要选中smtp邮件服务器,Yahoo不提供免 ...
- 使用Spring发送Email
配置Spring发送邮件 Spring发送邮件底层还是使用JavaMail,我在http://www.cnblogs.com/lz2017/p/6882925.html 中记录过关于JavaMail的 ...
- 第19章-使用Spring发送Email
1 配置Spring发送邮件 Spring Email抽象的核心是MailSender接口.顾名思义,MailSender的实现能够通过连接Email服务器实现邮件发送的功能,如图19.1所示. 图1 ...
- 使用spring 并加载模板发送Email 发邮件 java 模板
以下例子是使用spring发送email,然后加载到固定的模板,挺好的,大家可以试试 需要使用到spring-context 包 和 com.springsource.org.apache.veloc ...
- 利用Velocity结合Spring发email
在spring中发mail是一件容易的事,如果利用Velocity做mail的模板来发送就更得心应手了. 首先,还是简单描述sping中的配置,发mail需要一个mail的engin: <bea ...
- spring boot 学习(十)SpringBoot配置发送Email
SpringBoot配置发送Email 引入依赖 在 pom.xml 文件中引入邮件配置: <dependency> <groupId>org.springframework. ...
- java发送email
package com.assess.util; import java.io.File; import java.util.ArrayList; import java.util.List; imp ...
- 使用PHP发送email进行账号激活或者密码修改操作
使用PHPMailer编写发送邮件 PHPMailer需PHP的socket扩展支持,而PHPMailer链接qq域名邮箱时需要ssl加密方式(qq邮箱最近做了限制,新开域名邮箱不再允许通过smtp协 ...
- 使用python原生的方法实现发送email
使用python原生的方法实现发送email import smtplib from email.mime.text import MIMEText from email.mime.multipart ...
随机推荐
- 学习PYTHON之路, DAY 4 - PYTHON 基础 4 (内置函数)
注:查看详细请看https://docs.python.org/3/library/functions.html#next 一 all(), any() False: 0, Noe, '', [], ...
- 使用SecureCRT远程链接Ubuntu出现 Change of username or service not allowed的问题
RT: 首先是确认ubuntu上有运行 sshd服务的 但是用SecureCRT链接时报错,默认用户名是root: 打开ssh_config检查下是否禁止直接用root登陆 这句 改成yes o ...
- mac 解决eclipse OutOfMemoryError
1.找到eclipse.ini文件 找到你的eclipse图标右击————>显示包内容-->contents -->macos -->eclipse.ini 2.修改内容 -s ...
- ORACLE行转列通用过程
create or replace procedure row_to_col(tabname in varchar2, group_ ...
- The trip(Uva 11100)
题目大意: 给出n个数,要求将其分成最少的递增序列,保证序列最少的同时要使得序列长度的最大值最小. n<=10000 题解: 1.我是直接看着<训练指南>里的中文题面的,lrj似乎 ...
- 转-深入理解VMware虚拟网络
原文出处:http://wangchunhai.blog.51cto.com/225186/381225 VMware Workstation是一款非常不错的虚拟机软件,许多爱好者用VMware Wo ...
- Python array,list,dataframe索引切片操作 2016年07月19日——智浪文档
array,list,dataframe索引切片操作 2016年07月19日——智浪文档 list,一维,二维array,datafrme,loc.iloc.ix的简单探讨 Numpy数组的索引和切片 ...
- hdu 1503, LCS variants, find a LCS, not just the length, backtrack to find LCS, no extra markup 分类: hdoj 2015-07-18 16:24 139人阅读 评论(0) 收藏
a typical variant of LCS algo. the key point here is, the dp[][] array contains enough message to de ...
- 在Java filter中调用service层方法
在项目中遇到一个问题,在 Filter中注入 Serivce失败,注入的service始终为null.如下所示: public class WeiXinFilter implements Filter ...
- Levenberg-Marquardt算法基础知识
Levenberg-Marquardt算法基础知识 (2013-01-07 16:56:17) 转载▼ 什么是最优化?Levenberg-Marquardt算法是最优化算法中的一种.最优化是寻找使 ...