李鸿君吧 关注:3贴子:14
  • 4回复贴,共1

第三方服务器连接QQ邮箱并发送邮件

只看楼主收藏回复

一、 邮件开发涉及到的一些基本概念1.1、邮件服务器和电子邮箱
  要在Internet上提供电子邮件功能,必须有专门的电子邮件服务器。例如现在Internet很多提供邮件服务的厂商:sina、sohu、163等等他们都有自己的邮件服务器。
  这些邮件服务器类似于现实生活中的邮局,它主要负责接收用户投递过来的邮件,并把邮件投递到邮件接收者的电子邮箱中。
  电子邮箱(E-Mail地址)的获得需要在邮件服务器上进行申请,确切地说,电子邮箱其实就是用户在邮件服务器上申请的一个账户,用户在邮件服务器上申请了一个帐号后,邮件服务器就会为这个账号分配一定的空间,用户从而可以使用这个帐号以及空间发送电子邮件和保存别人发送过来的电子邮件。
1.2、邮件传输协议1.2.1、SMTP协议
  用户连接上邮件服务器之后,要想给它发送一封电子邮件,需要遵循一定的通讯规则,SMTP协议就是用来定义这种通讯规则的。因此,我们通常也把处理用户smtp请求(邮件发送请求)的服务器称之为SMTP服务器(邮件发送服务器)。
1.2.2、POP3协议
  同样,用户若想从邮件服务器管理的电子邮箱当中接收一封电子邮件话,它连上邮件服务器后,也要遵循一定的通讯格式,POP3协议就是用来定义这种通讯格式的。因此,我们通常也把处理用户pop3请求(邮件接收请求)的服务器称之为POP3服务器(邮件接收服务器)。


IP属地:四川1楼2017-10-16 14:21回复


    IP属地:四川2楼2017-10-16 14:28
    回复
      2025-09-01 02:18:52
      广告
      不感兴趣
      开通SVIP免广告
      二、编写处理用户注册处理程序2.1、开发封装用户注册信息的domain
      User.java
      public class User {
      private String username;
      private String password;
      private String email;
      public String getUsername() {
      return username;
      }
      public void setUsername(String username) {
      this.username = username;
      }
      public String getPassword() {
      return password;
      }
      public void setPassword(String password) {
      this.password = password;
      }
      public String getEmail() {
      return email;
      }
      public void setEmail(String email) {
      this.email = email;
      }
      }


      IP属地:四川5楼2017-10-16 14:30
      回复
        2.3、编写处理用户注册的Servlet
        package me.gacl.web.controller;
        import java.io.IOException;
        import javax.servlet.ServletException;
        import javax.servlet.http.HttpServlet;
        import javax.servlet.http.HttpServletRequest;
        import javax.servlet.http.HttpServletResponse;
        import me.gacl.domain.User;
        import me.gacl.service.UserService;
        public class RegisterServlet extends HttpServlet {
        public void doGet(HttpServletRequest request, HttpServletResponse response)
        throws ServletException, IOException {
        try{
        String username = request.getParameter("username");
        String password = request.getParameter("password");
        String email = request.getParameter("email");
        User user = new User();
        user.setEmail(email);
        user.setPassword(password);
        user.setUsername(username);
        System.out.println("把用户信息注册到数据库中");
        //用户注册成功之后就使用用户注册时的邮箱给用户发送一封Email
        //发送邮件是一件非常耗时的事情,因此这里开辟了另一个线程来专门发送邮件
        Sendmail send = new Sendmail(user);
        //启动线程,线程启动之后就会执行run方法来发送邮件
        send.start();
        //注册用户
        //new UserService().registerUser(user);
        request.setAttribute("message", "恭喜您,注册成功,我们已经发了一封带了注册信息的电子邮件,请查收,如果没有收到,可能是网络原因,过一会儿就收到了!!");
        request.getRequestDispatcher("/message.jsp").forward(request, response);
        }catch (Exception e) {
        e.printStackTrace();
        request.setAttribute("message", "注册失败!!");
        request.getRequestDispatcher("/message.jsp").forward(request, response);
        }
        }
        public void doPost(HttpServletRequest request, HttpServletResponse response)
        throws ServletException, IOException {
        doGet(request, response);
        }
        }


        IP属地:四川7楼2017-10-16 14:39
        回复
          转自 孤傲苍狼 博客,原文地址: http://www.cnblogs.com/xdp-gacl/p/4220190.html


          IP属地:四川8楼2017-10-16 14:41
          回复