邮件服务器:

邮件服务器提供了邮件系统的基本结构,包括邮件传输,邮件分发,邮件存储等功能,以确保邮件能够发送到互联网中的任意地方。

邮件服务器就像我们生活中的邮局,为人们提供邮件服务。要保证邮件被正确传输和接收,需要统一规则的支持,这就是邮件协议。

邮件协议主要包括: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 !!!!的更多相关文章

  1. Spring 发送 Email

    本文转自:http://zl198751.iteye.com/blog/757617 看到了本文,收获颇丰,感谢之至! 首先介绍下Email的发送流程: 需要选中smtp邮件服务器,Yahoo不提供免 ...

  2. 使用Spring发送Email

    配置Spring发送邮件 Spring发送邮件底层还是使用JavaMail,我在http://www.cnblogs.com/lz2017/p/6882925.html 中记录过关于JavaMail的 ...

  3. 第19章-使用Spring发送Email

    1 配置Spring发送邮件 Spring Email抽象的核心是MailSender接口.顾名思义,MailSender的实现能够通过连接Email服务器实现邮件发送的功能,如图19.1所示. 图1 ...

  4. 使用spring 并加载模板发送Email 发邮件 java 模板

    以下例子是使用spring发送email,然后加载到固定的模板,挺好的,大家可以试试 需要使用到spring-context 包 和 com.springsource.org.apache.veloc ...

  5. 利用Velocity结合Spring发email

    在spring中发mail是一件容易的事,如果利用Velocity做mail的模板来发送就更得心应手了. 首先,还是简单描述sping中的配置,发mail需要一个mail的engin: <bea ...

  6. spring boot 学习(十)SpringBoot配置发送Email

    SpringBoot配置发送Email 引入依赖 在 pom.xml 文件中引入邮件配置: <dependency> <groupId>org.springframework. ...

  7. java发送email

    package com.assess.util; import java.io.File; import java.util.ArrayList; import java.util.List; imp ...

  8. 使用PHP发送email进行账号激活或者密码修改操作

    使用PHPMailer编写发送邮件 PHPMailer需PHP的socket扩展支持,而PHPMailer链接qq域名邮箱时需要ssl加密方式(qq邮箱最近做了限制,新开域名邮箱不再允许通过smtp协 ...

  9. 使用python原生的方法实现发送email

    使用python原生的方法实现发送email import smtplib from email.mime.text import MIMEText from email.mime.multipart ...

随机推荐

  1. 深入springMVC源码------文件上传源码解析(下篇)

    在上篇<深入springMVC------文件上传源码解析(上篇) >中,介绍了springmvc文件上传相关.那么本篇呢,将进一步介绍springmvc 上传文件的效率问题. 相信大部分 ...

  2. 10.6 CCPC northeast

    1001 Minimum's Revenge 点的编号从 1 到 n ,u  v 的边权是 LCM(u,v) ,求这个图的最下生成树 搞成一颗以 1 为 根 的菊花树 ---------------- ...

  3. RMAN 参数详解

    使用RMAN>show all;可以显示出RMAN 配置参数为: CONFIGURE RETENTION POLICY TO REDUNDANCY 1; # defaultCONFIGURE B ...

  4. Leetcode详解Maximum Sum Subarray

    Question: Find the contiguous subarray within an array (containing at least one number) that has the ...

  5. P53 T3

    为方便旅客,某航空公司拟开发一个机票预定系统.旅行社把预定机票的旅客信息(姓名.性别.工作单位.身份证号码.旅行时间.旅行目的地等)输入进入该系统,系统为旅客安排航班,印出取票通知和账单,旅客在飞机起 ...

  6. 【DIY】【外壳】木板 & 亚克力 加工

    —————————————————————————————————————————————————————————————————————— 一.途径 淘宝 https://item.taobao.c ...

  7. 基于内存,redis,mysql的高速游戏数据服务器设计架构

    转载请注明出处,欢迎大家批评指正 1.数据服务器详细设计 数据服务器在设计上采用三个层次的数据同步,实现玩家数据的高速获取和修改. 数据层次上分为:内存数据,redis数据,mysql数据 设计目的: ...

  8. HDU 5010 Get the Nut(2014 ACM/ICPC Asia Regional Xi'an Online)

    思路:广搜, 因为空格加上动物最多只有32个那么对这32个进行编号,就能可以用一个数字来表示状态了,因为只有 ‘P’   'S' 'M' '.' 那么就可以用4进制刚好可以用64位表示. 接下去每次就 ...

  9. Python学习07——字典(2)

    笨办法学Python第40节,上次用的第三版的书,这次是第四版的书. 这一节的代码如下: cities = {'CA':'San Francisco', 'MI':'Detroit', 'FL':'J ...

  10. eclipse 启动失败(找不到jvm)

    今天启动eclipse时提示了一个错误 在网上找到的解决方法是在eclipse的快捷方式中加入Java的JVM的路径,方法如下: 右键eclipse快捷方式 ->属性 在目标中  如果只有 D: ...