站内搜索: 请输入搜索关键词

当前页面: 开发资料首页J2EE 专题JSP 发送邮件的问题 急求帮助~~~~~!!

JSP 发送邮件的问题 急求帮助~~~~~!!

摘要: JSP 发送邮件的问题 急求帮助~~~~~!!


BOSS要求:
1.在本公司网页注册后要发送 激活邮件 到用户邮箱
2.当用户要求找回密码时要以发送邮件的方式把密码发到用户邮箱
这个应该可以用JAVAMAIL实现的,可现在公司没有邮件服务器,只有邮件转发器(有可能说的不专业,不过就是用来转发邮件的),现在请问各位大哥大姐们 对于这样的情况是不是还可以使用JAVAMAIL来解决?

另外 如果说发送邮件方面由别人写一个CGI来完成 , 我只要调用这个接口,那么该如何调用?

谢谢大家帮帮我,很急~~~~


顶上去~~~急啊~~~


public class SendEmail {
Logger logger=Logger.getLogger(this.getClass());
/**
* Email发送方法
* @param toemails 需要一个字符串参数,用来设置收件人地址,如果收件人为多个,则用","隔开
* @param content 邮件内容
* @param subject 邮件主题
* @return 邮件成功发送则返回true,否则返回false
*/
public boolean sendSimpleEmail(String toemails,String content,String subject){
boolean result=false;
logger.info("进入发送Email类");
try {
//创建属性对象
Properties props = new Properties();
//设置邮件传输协议为:smtp
props.put("mail.transpost.protocol","smtp");
//设置邮件服务器地址
props.put("mail.smtp.host", "smtp.163.com");
//设置邮件验证为真
props.put("mail.smtp.auth", "true");
//设置邮件服务器端口
props.put("mail.smtp.port","25");

//调用验证类进行验证
logger.info("验证类实例化==============");
CheckSendEmail auth=new CheckSendEmail("link2friend","lip009");

logger.info("验证通过");
//创建session对象
Session sendMailSession;
sendMailSession = Session.getInstance(props, auth);
//设置输出调试信息
sendMailSession.setDebug(true);

logger.info("开始创建消息对象");
//创建信息对象
Message newMessage = new MimeMessage(sendMailSession);

//输入发送信息
//设置发信人地址
logger.info("设置发信人地址");
newMessage.setFrom(new InternetAddress("link2friend@163.com"));

//设置收信人地址,只支持单用户发送
// newMessage.setRecipient(Message.RecipientType.TO,new InternetAddress("lip0091981@163.com"));

//设置收信人地址,可以支持多用户发送
logger.info("设置收信人地址");
newMessage.setRecipients(Message.RecipientType.TO,
InternetAddress.parse(toemails));
//附件
//==============================================================================
//msgText是信件的正文,共有两行
// String msgText = content;

//msgAttachment是一段字符串作为附件内容
// String msgAttachment = "This is an attachment string!";

// MimeBodyPart mbp1 = new MimeBodyPart();

// mbp1.setText(msgText); //把前面定义的msgText中的文字设定为邮件正文的内容

//创建附件部分
// MimeBodyPart mbp2 = new MimeBodyPart();

//使用setText(text, charset)来加入附件
// mbp2.setText(msgAttachment, "gb2312");

//创建Multipart
// Multipart mp = new MimeMultipart();

// mp.addBodyPart(mbp1);
// mp.addBodyPart(mbp2);

// 添加 Multipart到Message中
// newMessage.setContent(mp);
//==============================================================================
//设置信件文本格式(当设置了附件,这里就不能有)
logger.info("设置格式");
newMessage.setContent("SendMail", "text/html");

//设置信件主题
logger.info("设置主题");
newMessage.setSubject(subject);

//设置信件发送日期
logger.info("设置发送日期");
newMessage.setSentDate(new Date());

//设置信件正文(当设置了附件,这里就不能有)
newMessage.setText(content);
logger.info("设置完消息");
//创建对象
Transport transport;
transport = sendMailSession.getTransport("smtp");
logger.info("将要发送");

//发送
result=true;
transport.send(newMessage);//此处总是抛出异常,让人很是郁闷,但是邮件却发送成功!
logger.info("恭喜你!您的邮件已经成功发送!");
}
catch (MessagingException ex) {
// ex.printStackTrace();
}
return result;
}


如果是别人写的,你只需要调用这个方法,传进去相应的参数就可以了


谢谢 深蓝忧郁

我还有2个问题要麻烦你
1. 现在我们公司只提供给我邮件转发器,是不是也能用你上面所写的方法来发邮件?

2.别人写的CGI可能是用非JAVA语言写的 我该怎么去调用?

小弟没接触过这方面的东西 说的不对的地方大家多纠正,谢谢拉~~~~~



JAVA调用DLL简单小例子
这个小例子用JNI调用了VC++做的DLL动态库。

1、总体说明:
实现一个函数,传入整形数i,返回值i*i,这个函数做在DLL中,java将通过JNI调用这个函数,传入一个参数,得到返回值。
确定DLL的名称为calldll.dll,函数shanfei(int i)。

2、编写java程序javacall.java,如下:
public class javacall
{
static
{
System.loadLibrary("calldll");
}

public native static int shanfei(int i);

public static void main(String[] args)
{
javacall jc = new javacall();
int j;
j = jc.shanfei(4);
System.out.println(j);
}
}

3、编译
javac javacall.java

4、生成头文件
javah javacall
生成javacall.h文件

5、制作VC++动态库
建立新DLL工程,程序中添加:

#include "javacall.h"

JNIEXPORT jint JNICALL Java_javacall_shanfei (JNIEnv *, jclass, jint p)
{
int j = p*p;
return j;

别忘了将javacall.h复制到VC工程目录中,然后编译,如果编译说找不到jni.h文件,可以将jni.h复制到工程目录中,还可将javacall.h文件中的#include 改为#include "jni.h",再编译。

6、java调用
将生成的calldll.dll文件复制到javacall.java所在的目录中,运行
java javacall,应该可以看到运行结果。



转发器没用过...


那如果我需要调用的CGI不是在本地的那是不是就无法调用了??

我也知道问题多多,不过希望忧郁能帮我下下..


不是本地也可以调用的


↑返回目录
前一篇: 求2006年6月16日的poi版本~~~~
后一篇: 100分求段java代码,谢谢各位了!