|
|||||||||
(c) General Хочу привести один класс который посылает html-почту. На сегодняшний день существует два подхода к посылке почты:
У первого способа огромное преимущество - платформо-независимость, однако есть минус - усложняется конфигурирование и скорость отсылки. Второй способ: недостаток - у какого уважающего себя Windwos есть /usr/sbin/sendmail ? :) С другой стороны, какой уважающий себя Java-девелопер ориентируется на Win32 платформу? :) Однако преимущества огромны - sendmail настолько "умная" программа... - нам совершенно не надо заботиться о том чтобы smtp сервер работал, не надо тратить время на установление tcp/ip соединения с этим сервером... В общем далее я привожу пример класса который реализует второй подход (на его основе сейчас работает самопальный автоответчик в одном из чатов - он сообщения адрессованные мне в приват посылает через email-sms гейт мне на мобильный :-)). На последок хочу напомнить: "Товарищи, будьте бдительны и посылайте почту в КОИ-8 - это СТАНДАРТ для нашей кодировки." import java.io.*; /** * Object wich allow sending html mail. Need sendmail (this object * is ported some my perl scripts). * @author General */ public class SendMail { private String from,to,msgbody,subj; public SendMail() { from="";to="";msgbody="";subj="";} public void setFrom(String From) { from=From; } public void setTo(String To) { to=To; } public void setSubj(String Subj) { subj=Subj;} public void setMessageBody(String MessageBody) { msgbody=MessageBody;} public void send() { String cmd=""; String param=""; cmd="/usr/sbin/sendmail -t -oi"; param=param+"From: "+from+"\n"; param=param+"To: "+to+"\n"; param=param+"Subject: "+subj+"\n"; param=param+"Content-Type: text/html; charset=koi8-r\n\n"; param=param+msgbody+"\n"; try{ Process p=Runtime.getRuntime().exec(cmd); OutputStream o=p.getOutputStream(); o.write(param.getBytes("koi8")); o.flush(); o.close(); } catch(Exception e) { System.out.println(""+e); } } } Информация взята с сайта Developers.com.ua
|
|||||||||
![]() |
![]() |