欢迎光临
我们一直在努力

灌灌水,附上我使用javamail smtp的类-JSP教程,邮件相关

建站超值云服务器,限时71元/月

使用范例:
/*
        * new sendmail() 使用gbk的默认编码发送文本信息
        * new sendmail(编码,文本还是html);
        */
        wuyu.javamail.sendmail mail = new wuyu.javamail.sendmail( "gbk", true );
        /*
        * mail.connect (smtp服务器);
        * main.connect(smtp服务器,用户名,密码); 适用于smtp认证的发信服务器
        */
        mail.connect( args[0], args[1], args[2] );
        for ( int i = 0; i < integer.parseint( args[3] ); i++ ) {
            system.out.print( i + "\t" );
            /*
            * main.send(from,to,cc,bcc,主题,正文,附件文件名)
            * to,cc,bcc可填写多个mail地址
            * 附件文件名为null,表示不发送附件
            */
            mail.send( "mmwy@ynwst.com", args[4], "", "", "这是主题" + i, "<b>这是正文</b>", null );
            system.out.println( i );
        }
        mail.close();
=-=——————–

sendmail.java
——————————
package wuyu.javamail;

/**
* 调用java mail发送邮件的类
*/
public class sendmail {
    private string encode;//文本编码
    private boolean html;//文本还是html内容
    private javax.mail.session session;
    private javax.mail.transport transport;

    public sendmail() {
        this.encode = "gbk";
        this.html = false;
    }

    public sendmail( string encode, boolean html ) {
        this.encode = encode;
        this.html = html;
    }

    public boolean connect( string smtphost ) {
        return connect( smtphost, null, null );
    }

    public boolean connect( string smtphost, string uid, string pwd ) {
        try {
            java.util.properties properties = new java.util.properties();
            properties.put( "mail.smtp.host", smtphost );
            if ( uid == null || uid.equals( "" ) ) {
                session = javax.mail.session.getinstance( properties, null );
            } else {
                properties.put( "mail.smtp.auth", "true" );
                auth auth = new auth( uid, pwd );
                session = javax.mail.session.getinstance( properties, auth );
            }
            transport = session.gettransport( "smtp" );
            transport.connect();
            return true;
        }
        catch ( exception e ) {
            e.printstacktrace();
            return false;
        }
    }

    public void close() {
        if ( transport != null ) {
            try {
                transport.close();
            }
            catch ( exception e ) {
                e.printstacktrace();
            }
        }
    }

    public void send( string from, string to, string cc, string bcc, string subject, string text, string[] filename ) {
        try {
            javax.mail.internet.mimemessage mimemessage = createmimemessage( session,
                    from, to, cc, bcc, subject, text, filename );
            transport.sendmessage( mimemessage, mimemessage.getallrecipients() );
        }
        catch ( javax.mail.messagingexception e ) {
            e.printstacktrace();  //to change body of catch statement use options | file templates.
        }
    }

    private javax.mail.internet.mimemessage createmimemessage(
            javax.mail.session session,
            string from, string to, string cc, string bcc,
            string subject, string text,
            string[] filename ) throws javax.mail.messagingexception {
        javax.mail.internet.mimemessage message = new javax.mail.internet.mimemessage( session );
        javax.mail.internet.internetaddress fromaddress = new javax.mail.internet.internetaddress( from );
        message.setfrom( fromaddress );

        javax.mail.internet.internetaddress[] toaddress = javax.mail.internet.internetaddress.parse( to );
        javax.mail.internet.internetaddress[] ccaddress = javax.mail.internet.internetaddress.parse( cc );
        javax.mail.internet.internetaddress[] bccaddress = javax.mail.internet.internetaddress.parse( bcc );

        message.setrecipients( javax.mail.message.recipienttype.to, toaddress );
        message.setrecipients( javax.mail.message.recipienttype.cc, ccaddress );
        message.setrecipients( javax.mail.message.recipienttype.bcc, bccaddress );

        message.setsubject( subject, this.encode );
        //处理附件
        if ( filename != null && filename.length > 0 ) {
            javax.mail.multipart multipart = new javax.mail.internet.mimemultipart();

            javax.mail.internet.mimebodypart mimebodypart = new javax.mail.internet.mimebodypart();
            if ( html ) {
                mimebodypart.setcontent( text, "text/html;charset="+this.encode );
            } else {
                mimebodypart.settext( text, this.encode );
            }
            multipart.addbodypart( mimebodypart );
            for ( int i = 0; i < filename.length; i++ ) {
                try {
                    javax.mail.internet.mimebodypart filebodypart = new javax.mail.internet.mimebodypart();
                    javax.activation.datasource datasource = new javax.activation.filedatasource( filename[i] );
                    filebodypart.setdatahandler( new javax.activation.datahandler( datasource ) );
                    filebodypart.setfilename( new java.io.file( filename[i] ).getname() );
                    multipart.addbodypart( filebodypart );
                }
                catch ( exception e ) {
                    e.printstacktrace();
                }
            }
            message.setcontent( multipart );
        } else {
            if ( html ) {
                message.setcontent( text, "text/html;charset="+this.encode );
            } else {
                message.settext( text, this.encode );
            }
        }
        return message;
    }
}

auth.java
------------------------
package wuyu.javamail;

public class auth extends javax.mail.authenticator {
    private string user,pwd;

    public auth( string user, string pwd ) {
        this.user = user;
        this.pwd = pwd;
    }

    protected javax.mail.passwordauthentication getpasswordauthentication() {
        return new javax.mail.passwordauthentication( this.user, this.pwd );
    }
}

赞(0)
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com 特别注意:本站所有转载文章言论不代表本站观点! 本站所提供的图片等素材,版权归原作者所有,如需使用,请与原作者联系。未经允许不得转载:IDC资讯中心 » 灌灌水,附上我使用javamail smtp的类-JSP教程,邮件相关
分享到: 更多 (0)

相关推荐

  • 暂无文章