java网上商城开发之邮件发送功能(全)_java

最近在学习网上商城时,接触到了一个邮件发送的功能。之前一直在使用邮箱进行发送邮件,但是其中的具体如何运转的却不知道是怎么回事。那么邮件发送究竟是怎么一回事呢?

邮件发送过程:

过程描述:首先是发送人将邮件通过客户端软件发送到特定的服务器上,然后通过电子邮件简单传输协议(SMTP)来进行传输,收件人通过POP3协议将邮件从服务器上接受回来。这样就实现了邮件之间的相互传送。

实现过程:

在有网络的情况下,我们可以直接使用搜狐、网易等邮箱进行发送。那么如何在没有网络的情况下,实现内部之间的发送呢?

 首先需要安装配置一个服务器,视频中使用的是易邮邮件服务器,该软件的安装比较简单,安装成功之后会有一个失败提示,如下:

      

该问题没有影响(暂时还没有遇到什么问题)我们的功能,可以忽略。安装完成之后需要对其进行一些配置。先进行服务器设置,打开工具——>服务器设置:设置自己服务器地址的域名(类似于我们使用的网易邮箱的域名@后的163.com)

      

然后添加新账号:设置名称和密码

     

添加之后的效果如下:

    

服务器配置完成之后,进行客户端的安装与配置,因为本机已经安装了foxmail的最新版本,为了不造成混乱,所以用foxmail6.5进行设置,其中安装过程不再叙述。

首先要新添加用户账户(如果在安装过程中已经设置了测试的用户就不用再添加),填入测试的账户,如下:

    

点击下一步,设置服务类型和服务器,这里需要注意服务器的配置,由于自己是在本地进行邮件传送,所以发、送邮件服务器都设置为本地:localhost。

    

设置好之后,下一步,进行测试:

    

成功之后即可关闭配置,此时配置基本上就完成了

    

在此次配置过程中需要注意:

      1、配置服务器的域名,并且添加一些账户

      2、配置客户端时,注意接收服务器地址的设置、服务器类型等问题。

 至此,我们发送邮件所需要的环境已经配置完成,具体的代码实现过程,将在下篇进行详细介绍。通过这次的学习,了解了邮件服务的基本原理,知道了我们平常发送邮件的过程。同时,也让自己对一些服务器设置、域名及类型有了新的认识,之前也曾遇到过foxmail无法工作的问题,现在基本上知道其问题处在何处了。知识,总是在不断的实践中获得的,而且是需要不断的反复学习和锻炼。

以上基本上将发送的原理说了一下,以及如何进行配置邮件服务。下面主要说一下发送邮件的一些具体的实现过程。

代码实现发送过程主要分为三个步骤:

第一步是获得连接,通过java中的Properties类来进行读取配置文件,调用基类的一些方法进行基础的设置以及连接设置。

 // 1、获得连接
  Properties props=new Properties();//Properties是java中的一个重要的类,主要用于读取java的配置文件
  //设置连接的服务器
  props.setProperty("mail.host", "localhost");//调用Hashtable的方法put,通过调用基类的put方法来设置键值对
  Session session=Session.getInstance(props, new Authenticator(){ 

  @Override
  protected PasswordAuthentication getPasswordAuthentication() {
   // TODO Auto-generated method stub
   //设置自己的服务邮件地址和密码
   return new PasswordAuthentication("service@pengbo.com","1");
  }   

  });

第二步是进行创建邮件对象,主要是通过Message这个载体进行封装信息,Message是一个抽象类,已知的实现类有MimeMessage。   

// 2、创建邮件对象
  Message message=new MimeMessage(session);
// 设置发送人
  try {
   //设置服务端
  message.setFrom(new InternetAddress("service@pengbo.com"));
//  设置收件人
  message.addRecipient(RecipientType.TO, new InternetAddress(to));
//  设置标题
  message.setSubject("购物激活邮件");
//  设置邮件正文
  message.setContent("<h1>购物激活邮件,点下面链接完成激活操作!</h1><h3><a href='http://192.168.21.84:8080/shop/user_active.action?code="+code+" '>http://192.168.21.84:8080/shop/user_active.action?code="+code+"</a></h3>", "text/html;charset=UTF-8");

第三步是发送邮件

// 3、发送邮件
Transport.send(message);
这样发送邮件的主要流程就实现了,然后在此类中定义主方法: 

public static void main(String[] args){
  //要发送的对象及验证码
   sendMail("a@pengbo.com","11111111");
  }
 在Service层进行调用邮件发送的方法即可: 

// 发送激活邮件
  MailUitls.sendMail(user.getEmail(), code); 

具体的知识积累:

       1、Properties  主要获取配置文件信息,主要的方法有getProperty ( String key)、load ( InputStream inStream)、setProperty ( String key, String value)、store ( OutputStream out, String comments)、clear ()

       2、Session  是一对配置信息的集合,主要作用是接收各种配置属性信息,初始化JavaMail环境

       3、Message  是一个抽象类,它实现接口Part,并定义了一些属性

       4、transport是指传输邮件,与之对应的是store存储功能。 

    功能虽然实现了,但是其中用到的一些类还需要进行深入的学习和研究。就目前而言,仅仅有了一个入门,知道了在JavaMail中,有Properties、Session、Message这几个重要的类。

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

以上是小编为您精心准备的的内容,在的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索java网上商城
, java邮件发送
java邮件发送功能
java实现发送邮件功能、java发送邮件功能、java 发送邮件、java mail 发送邮件、java发送邮件代码,以便于您获取更多的相关知识。

时间: 2024-10-31 07:35:00

java网上商城开发之邮件发送功能(全)_java的相关文章

.NET开发邮件发送功能的全面教程(含邮件组件源码)

原文 http://www.cnblogs.com/heyuquan/p/net-batch-mail-send-async.html    今天,给大家分享的是如何在.NET平台中开发"邮件发送"功能.在网上搜的到的各种资料一般都介绍的比较简单,那今天我想比较细的整理介绍下: 1)         邮件基础理论知识 2)         邮件发送相关.NET类库 3)         介绍我开发的一个发送邮件的小组件(MailHelper) 4)         MailHelper

深入Lumisoft.NET实现邮件发送功能的方法详解_实用技巧

在前面的一些文章中,有介绍过DotNet内置SMTP类的邮件发送功能,附件.嵌入图片的模式都有介绍,本文继续介绍Lumisoft.NET这个非常优秀的开源组件,用该组件来设计开发邮件工具,将变得更加方便,功能更加强大.网上很多文章基本介绍如何使用该组件来收取邮件较多,较少介绍使用该组件做邮件发送功能的.本文主要探寻使用该组件实现邮件的发送功能,邮件发送有两种方式,一种是不用发件人即可发送邮件,一种是使用发件人账户密码和SMTP服务器来实现邮件发送的,本文分别对这两种方式进行介绍. 组件下载地址:

基于Lumisoft.NET实现的邮件发送功能

在前面的一些文章中,有介绍过DotNet内置SMTP类的邮件发送功能,附件.嵌入图片的模式都有介绍,本文继续介绍Lumisoft.NET这个非常优秀的开源组件,用该组件来设计开发邮件工具,将变得更加方便,功能更加强大.网上很多文章基本介绍如何使用该组件来收取邮件较多,较少介绍使用该组件做邮件发送功能的.本文主要探寻使用该组件实现邮件的发送功能,邮件发送有两种方式,一种是不用发件人即可发送邮件,一种是使用发件人账户密码和SMTP服务器来实现邮件发送的,本文分别对这两种方式进行介绍. 组件下载地址:

WordPress网站实现邮件发送功能例子

windows主机是无法支持mail()函数的,所以无法使用WordPress自带的邮箱服务,而发送邮件的功能对于一个网站来说是必不可少的,对于使用WordPress建站的站长来说,除了可以使用主机邮箱功能发送邮件外,也可以用WP的插件或者直接修改WP的代码在WP网站中实现邮件发送功能. 下面我们就来讨论下用WP的SMTP插件和修改WP代码的两种实现邮件发送功能的方法. 1.使用WP的SMTP插件实现邮件功能 WP 的SMTP插件是国人制作的,设置界面非常简单,是一款全中文的的插件. WP SM

利用Node.JS实现邮件发送功能_node.js

第一步.配置篇 首先需要安装nodemailer库 npm install nodemailer//默认会安装最新的版本. 关于这个库的文档参见nodemailer 第二步.库的一些使用介绍 这个库使用方法很简单的.首先是要创建一个用于发送邮件的实例 var transporter = nodemailer.createTransport(transport[, defaults]) transport参数属性 属性太多了就只写一些关键的属性      port:连接的端口号,一般就是465  

Android实现带附件的邮件发送功能_Android

本文实例讲解了基于基于JMail实现Android邮件发送功能,分享给大家供大家参考,具体内容如下 在android上发送邮件方式: 第一种:借助GMail APP客户端,缺点是必须使用GMail帐号,有一点是比较方便,不需要写很多代码,但是不是很灵活. 第二种:基于JMail实现,可以很灵活的自己设置各种属性,不需要GMail帐号 在第二种方式的实现之前,看一下JMail对EMail结构的划分: 基于SMTP协议发送EMail,所以客户端必须要知道SMTP的主机. 腾讯邮件的SMTP主机为:s

Android实现带附件的邮件发送功能

本文实例讲解了基于基于JMail实现Android邮件发送功能,分享给大家供大家参考,具体内容如下 在android上发送邮件方式: 第一种:借助GMail APP客户端,缺点是必须使用GMail帐号,有一点是比较方便,不需要写很多代码,但是不是很灵活. 第二种:基于JMail实现,可以很灵活的自己设置各种属性,不需要GMail帐号 在第二种方式的实现之前,看一下JMail对EMail结构的划分: 基于SMTP协议发送EMail,所以客户端必须要知道SMTP的主机. 腾讯邮件的SMTP主机为:s

深入Lumisoft.NET组件与.NET API实现邮件发送功能的对比分析_实用技巧

我在另一篇文章<深入Lumisoft.NET实现邮件发送功能的方法详解>有大致对这个Lumisoft.NET组件的使用进行了介绍,当然Lumisoft.NET组件除了提供邮件发送功能外,还提供了邮件接收等功能的处理(包括基于POP3协议和IMAP协议),而.NET则除了提供SMTP协议功能外,则没有提供POP3协议处理的相关类库,因此收取邮件这需要自己进行封装(需要也可以参考codeproject.com上的相关文章). 1..NET的邮件发送功能实现.NET本身封装了一个SmtpClient

android开发-app网上商城开发,后台架构如何

问题描述 app网上商城开发,后台架构如何 如题,只用serverlet和javabean可行吗?不用ssh框架,图片和视频存储方案是怎样的 解决方案 你可以试试Bmob,连租服务器的钱都省了 解决方案二: 你可以试试Bmob,连租服务器的钱都省了