如实现在jsp中发送邮件

     实现在jsp页面中发送邮件,可以结合Servlet来实现,步骤如下:

   (1)、先在项目WebRoot--->META-INF文件夹下面建立一个名为:context.xml文件(context文件名是固定的),接下就是在context.xml中进行配置,配置如下:

<Context>//Context头字母需是大写
  <Resource name="mail/Session" auth="Container"
            type="javax.mail.Session"

//配置邮件服务器主机,以及设置与服务器进行会话要进行身份认证
            mail.smtp.host="smtp.sina.com" mail.smtp.auth="true"  
//设置邮件传输的协议
            mail.transport.protocol="smtp"

            />
</Context>

    (2)、需要把mail.jar放入tomact中lib中去,记住不要把mail.jar放入项目中的lib中去否则会出错


    (3)、新建一个Servlet类,使用doPost()方法进行邮件的处理,doPost()方法中的代码如下:
      //创建一个InitialContext对象来初始化Context

      Context initCtx=new InitialContext();

      Context envCtx=(Context)initCtx.lookup("java:com/env");
     //读取服务器的环境信息
      Session session=(Session)initCtx.lookup("mail/session");

     //创建一个message对象,用来创建一封邮箱
     Message message=new MimeMessage(session);
     //设置邮件发送者邮箱地址
     message.setForm(new InternetAddress("*****@sina.com"));
     //设置邮件接收者们的邮箱地址,假设只发送给一个人
     InternetAddress[] to=new InternetAddress[1];
     to[0]=new InternetAddress("******@qq.com");
    //设置邮件发送的类型
    message.setRecipients(Message.Recipients.to,to);
    //邮件标题
    message.setSubject("春节快乐");
    //邮件正文
    message.setText("祝新的一年里家人和谐快乐");
    //创建一个传输对象
   Transport transport=session.getTransport();
   //建立与服务器的链接

  transport.connect("smtp.sina.com",25,"****@sina.com","*******");
  //发送邮件
  transport.sendMessage(messgae,to);
  //关闭网邮件传输
  transport.close();


   



你可能感兴趣的:(java,jsp,session,servlet,服务器,邮件服务器)