社区
Web 开发
帖子详情
我需要一个基于jsp的webmail的服务器和程序啊不知道那里有啊
xvivian
2004-03-21 09:02:43
我的环境是windows2000pro啊!
现在公司要做一个网站然后!要那种可以用web方式收信发信也可以用foxmail收发信的程序啊机于java数据库最好是access的啊
分不够还可以给啊!
我现在已经有500分了啊
...全文
84
1
打赏
收藏
我需要一个基于jsp的webmail的服务器和程序啊不知道那里有啊
我的环境是windows2000pro啊! 现在公司要做一个网站然后!要那种可以用web方式收信发信也可以用foxmail收发信的程序啊机于java数据库最好是access的啊 分不够还可以给啊! 我现在已经有500分了啊
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
1 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
fxywkj
2004-03-22
打赏
举报
回复
因需要基于WEB的MAIL发送程序(其实就是取回密码时发送密码),在网上看到一段MAIL程序,现在将其修改为WEB界面SERVLET处理并提交数据库寻找用户名的以发送回密码。大家可研究交流下。另外使用的时候建个表单,把用户名提交到getpost就可以了。
有三个类,一个是数据库类(dbconn.java),一个是MAIL发送类(mymail.java),还有一个是
SERVLET取得表单用户名及一些返回给用户的信息(getpost.java)。
调试此程序需要下载JAVAMAIL包与JAF包。可到SUN公司去下载。
dbconn.java类:
package webmail;
import javax.sql.*;
import java.sql.*;
public class dbconn {
String username;//数据库帐号
String password;//数据库密码
String drivername;//驱动名称
String url;//数据库地址
Connection conn;//连接对象
public dbconn()
{
}
public Connection getconn() throws SQLException,Exception
{
username="root";
password="";
drivername="org.gjt.mm.mysql.Driver";
url="jdbc:mysql://localhost/news";
Class.forName( drivername ).newInstance();
conn=DriverManager.getConnection(url,username,password);
return conn;
}
}
getpost.java类:
package webmail;
import javax.servlet.*;
import javax.servlet.http.*;
import javax.sql.*;
import java.sql.*;
import java.util.*;
import java.io.*;
public class getpost extends HttpServlet{
String username="";//用户名
String pass=null;//用户密码
Connection conn=null;//连接对象
ResultSet rs=null;//结果集
String mail=null;//用户MAIL地址
public getpost()
{
}
public void doPost(HttpServletRequest request,HttpServletResponse response)
throws ServletException,IOException
{
PrintWriter out=response.getWriter();
this.username=(String)request.getParameter("username");
System.out.println("取得用户名");
try
{
Check(username);
}
catch(Exception e)
{
System.out.println("连接出错!");
}
if(pass!=null)
{
System.out.println("准备建立MAIL对象");
mymail themail = new mymail();
themail.setNeedAuth(true);//设置是否需要MAIL帐号与密码验证
themail.setSubject("你的密码");
themail.setBody("你的用户名是:"+this.username+"
你的密码是:"+this.pass);
themail.setTo(this.mail);
themail.setFrom("crhwan@21cn.com");
themail.setNamePass("username","password");//在此输入你的MAIL帐号与密码
if(themail.sendout() == false)
{
return;
}
String ok=new String("发送成功,密码已发送到你注册时的MAIL信箱地址,请查收!".getBytes("GBK"),"ISO-8859-1");
out.println("<script language='javascript'>alert('"+ok+"');history.back();</script>");
}
else
{
System.out.println("对不起,发送失败!");
String no=new String("对不起,没有找到你的用户名!".getBytes("GBK"),"ISO-8859-1");
out.println("<script language='javascript'>alert('"+no+"');history.back();</script>");
return;
}
}
public void Check(String username) throws Exception,SQLException
{
try
{
dbconn get=new dbconn();
conn=get.getconn();
String name=username;
Statement query=conn.createStatement();
String sql="select * from userlist where username='"+name+"'";
rs=query.executeQuery(sql);
System.out.println("准备取得密码");
if(!rs.next())
{
System.out.println("对不起,没有找到你的用户名!");
this.pass=null;
return;
}
else
{
this.mail=rs.getString("f_email");
this.pass=rs.getString("password");
}
}
catch(Exception e)
{
System.out.println("数据出错!");
}
}
}
mymail.java类:
package webmail;
import java.util.*;
import javax.mail.*;
import javax.mail.internet.*;
import java.util.Date;
import javax.activation.*;
import java.io.*;
public class mymail {
private MimeMessage mimeMsg; //MIME邮件对象
private Session session; //邮件会话对象
private Properties props; //系统属性
private boolean needAuth = false; //smtp是否需要认证
private String username = ""; //smtp认证用户名和密码
private String password = "";
private Multipart mp; //Multipart对象,邮件内容,标题,附件等内容均添加到其中后再生成MimeMessage对象
public mymail() {
setSmtpHost("smtp.21cn.com");//SMTP服务器
createMimeMessage();
}
public mymail(String smtp){
setSmtpHost(smtp);
createMimeMessage();
}
public void setSmtpHost(String hostName) {
System.out.println("设置系统属性:mail.smtp.host = "+hostName);
if(props == null)props = System.getProperties(); //获得系统属性对象
props.put("mail.smtp.host",hostName); //设置SMTP主机
}
public boolean createMimeMessage()
{
try{
System.out.println("准备获取邮件会话对象!");
session = Session.getDefaultInstance(props,null); //获得邮件会话对象
}
catch(Exception e){
System.err.println("获取邮件会话对象时发生错误!"+e);
return false;
}
System.out.println("准备创建MIME邮件对象!");
try{
mimeMsg = new MimeMessage(session); //创建MIME邮件对象
mp = new MimeMultipart();
return true;
}
catch(Exception e){
System.err.println("创建MIME邮件对象失败!"+e);
return false;
}
}
public void setNeedAuth(boolean need) {
System.out.println("设置smtp身份认证:mail.smtp.auth = "+need);
if(props == null)props = System.getProperties();
if(need){
props.put("mail.smtp.auth","true");
}else{
props.put("mail.smtp.auth","false");
}
}
public void setNamePass(String name,String pass) {
username = name;
password = pass;
}
public boolean setSubject(String mailSubject) {
System.out.println("设置邮件主题!");
try{
mimeMsg.setSubject(mailSubject);
return true;
}
catch(Exception e) {
System.err.println("设置邮件主题发生错误!");
return false;
}
}
public boolean setBody(String mailBody) {
try{
BodyPart bp = new MimeBodyPart();
bp.setContent("<meta http-equiv=Content-Type content=text/html; charset=??????>"+mailBody,"text/html;charset=??????");
mp.addBodyPart(bp);
return true;
}
catch(Exception e){
System.err.println("设置邮件正文时发生错误!"+e);
return false;
}
}
public boolean addFileAffix(String filename) {
System.out.println("增加邮件附件:"+filename);
try{
BodyPart bp = new MimeBodyPart();
FileDataSource fileds = new FileDataSource(filename);
bp.setDataHandler(new DataHandler(fileds));
bp.setFileName(fileds.getName());
mp.addBodyPart(bp);
return true;
}
catch(Exception e){
System.err.println("增加邮件附件:"+filename+"发生错误!"+e);
return false;
}
}
public boolean setFrom(String from) {
System.out.println("设置发信人!");
try{
mimeMsg.setFrom(new InternetAddress(from)); //设置发信人
return true;
}
catch(Exception e)
{ return false; }
}
public boolean setTo(String to){
if(to == null)return false;
try{
mimeMsg.setRecipients(Message.RecipientType.TO,InternetAddress.parse(to));
return true;
}
catch(Exception e)
{ return false; }
}
public boolean setCopyTo(String copyto)
{
if(copyto == null)return false;
try{
mimeMsg.setRecipients(Message.RecipientType.CC,(Address[])InternetAddress.parse(copyto));
return true;
}
catch(Exception e)
{ return false; }
}
public boolean sendout()
{
try{
mimeMsg.setContent(mp);
mimeMsg.saveChanges();
System.out.println("正在发送邮件....");
Session mailSession = Session.getInstance(props,null);
Transport transport = mailSession.getTransport("smtp");
transport.connect((String)props.get("mail.smtp.host"),username,password);
transport.sendMessage(mimeMsg,mimeMsg.getRecipients(Message.RecipientType.TO));
//transport.send(mimeMsg);
System.out.println("发送邮件成功!");
transport.close();
return true;
}
catch(Exception e)
{
System.err.println("邮件发送失败!"+e);
return false;
}
}
}
欢迎交流QQ9986986
基于qm
ail
的完整
WEBM
AIL
解决方案安装教程(使用PHP)
在本教程中,我们将详细介绍如何安装基于qm
ail
的完整
WEBM
AIL
解决方案,并提供相应的源代码。现在,我们
需要
配置Web
服务器
以支持
WEBM
AIL
。最后,我们
需要
编写
Webm
ail
应用。接下来,我们
需要
安装PHP及其相关依赖项。首先,我们
需要
安装qm
ail
。打开Nginx配置文件(通常位于。步骤4:编写
Webm
ail
应用。步骤2:安装PHP和相关依赖。步骤3:配置Web
服务器
。步骤1:安装qm
ail
。
webm
ail
邮件
服务器
搭建_U-M
ail
邮件
服务器
转自: http://blog.csdn.net/
webm
ail
_server/article/det
ail
s/8113724 常见邮件
服务器
(接收
服务器
和发送邮件
服务器
)地址 ,平时设置ootlook的时候可以查看。 腾讯QQ邮箱 接收
服务器
:pop.qq.com 发送
服务器
:smtp.qq.com 网易126邮箱 接收
服务器
:pop3.1
php
webm
ail
,10个基于Ajax的PHP
Webm
ail
客户端
1.RoundCubeRoundCube
Webm
ail
是
一个
基于浏览器的IMAP 客户端,其提供了丰富的功能,包含MIME,地址本,文件夹操作,邮件搜索和拼写检查。 RoundCube
Webm
ail
由 PHP写成,
需要
MySQL 或 Postgres 数据库的支持。其UI完全遵守于XHTML 和 CSS 2.2.ZimbraZimbra 提供了
一个
开源的邮件和日历系统,也是基于Ajax技...
JSP
开发
WebM
ail
邮件
程序
系统
电子邮件(E-m
ail
)是Internet上使用最广泛的服务之一,传统的Em
ail
应用模式基于C/S结构,即用户使用客户端的邮件收发工具(如Outlook、Foxm
ail
等)与提供邮件服务的
服务器
(如163.net、263.net、371.net)通信,在使用客户端邮件工具之前,用户要进行一些必要的设置,如指定邮件
服务器
的主机地址和通信端口等,这些工作对刚开始上网的用户会有一定的困难,如果把E-m
基于java的邮件
服务器
以及
webm
ail
的搭建
一、准备工作 局域网中有两台电脑都用Windows XP SP2系统+JDK1.6.0_02,一台PCA,一台PCB,PCA当
服务器
,PCB当客户端测试用,当然PCA也可同时充当客户端。 Apache James(Java Apache M
ail
Enterprise Server)是Apache组织的子项目之一,完全采用纯Java技术开发,实现了SMTP、POP3与NNTP等多种 ...
Web 开发
81,114
社区成员
341,728
社区内容
发帖
与我相关
我的任务
Web 开发
Java Web 开发
复制链接
扫一扫
分享
社区描述
Java Web 开发
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章