📄 maddress.java
字号:
/*
* This product includes software developed by the
* Apache Software Foundation (http://www.apache.org/).
*/
package ch05.module;
import java.sql.*;
import java.util.*;
import java.text.*;
import javax.mail.*;
import javax.mail.internet.*;
import javax.servlet.http.*;
import ch05.*;
/**
* 针对注册页面的后台处理类
* @author ShenYK
* @version 1.0
*/
public class MAddress
{
public boolean getFriendMail ( HttpSession mySession )
{
//设置用户信息用
Hashtable myValues = (Hashtable)mySession.getAttribute(CommonConst.VIEWID_ADDRESSLIST);
//尝试连接数据库查找所有朋友的邮件列表
try
{
//载入MySQL的JDBC驱动类
Class.forName(CommonConst.DB_DRIVER_CLASSNAME);
//获得数据库连接
Connection conn = DriverManager.getConnection( CommonConst.DB_CONN_STRING );
Statement stmt = null;
ResultSet rs = null;
String sUsername = (String)mySession.getAttribute("username");
try
{
//准备检索数据库
stmt = conn.createStatement();
//获取数据库中地址簿中的所有记录
Vector vAddresses = new Vector();
String sQuery = "select * from address where username='" + sUsername + "' order by friend_name";
rs = stmt.executeQuery( sQuery );
while ( rs.next() )
{
String sFriendName = rs.getString(2);
String sFriendMail = rs.getString(3);
MailAddress ma = new MailAddress();
ma.setFriendName(sFriendName);
ma.setFriendMail(sFriendMail);
vAddresses.add( ma );
}
myValues.put( "addresses", vAddresses );
}
catch(Exception e)
{
conn.rollback();
e.printStackTrace();
mySession.setAttribute("errMsg","查找地址簿时出现错误!");
return false;
}
finally
{
try
{
rs.close();
stmt.close();
}catch(Exception ex)
{
}
}
}catch(Exception ex)
{
ex.printStackTrace();
mySession.setAttribute("errMsg","查找地址簿时出现错误!");
return false;
}
return true;
}
public boolean compositeMail( HttpSession mySession, String sAddressIndex )
{
try
{
//所有邮件的列表
Hashtable listValues = (Hashtable)mySession.getAttribute(CommonConst.VIEWID_ADDRESSLIST);
//本页面使用的值
Hashtable myValues = (Hashtable)mySession.getAttribute(CommonConst.VIEWID_SENDBOXDETAIL);
Vector vAddresses = (Vector)listValues.get("addresses");
int iIndex = Integer.parseInt(sAddressIndex);
MailAddress mailAddress = (MailAddress)vAddresses.get(iIndex);
myValues.put( "receiver", mailAddress.getFriendMail() );
return true;
}
catch(Exception e)
{
e.printStackTrace();
mySession.setAttribute("errMsg","尝试发送邮件时出现错误!");
return false;
}
}
public boolean addFriendInfo( HttpSession mySession, String sFriendName, String sFriendMail )
{
//设置用户信息用
Hashtable myValues = (Hashtable)mySession.getAttribute(CommonConst.VIEWID_ADDRESSLIST);
myValues.put( "friendName", sFriendName );
myValues.put( "friendMail", sFriendMail );
//尝试数据库连接
try
{
//载入MySQL的JDBC驱动类
Class.forName(CommonConst.DB_DRIVER_CLASSNAME);
//获得数据库连接
Connection conn = DriverManager.getConnection( CommonConst.DB_CONN_STRING );
Statement stmt = null;
ResultSet rs = null;
String sUsername = (String)mySession.getAttribute("username");
//获得当前时间
SimpleDateFormat sdf = new SimpleDateFormat("yyyy/MM/dd HH:mm:ss");
String sNewSaveTime = sdf.format( new java.util.Date(System.currentTimeMillis()) );
try
{
//检查数据库中是否已经有该用户了
stmt = conn.createStatement();
//执行SQL语句
String sQuery = "select count(*) from address where username='" + sUsername + "' and "
+ "friend_name='" + sFriendName + "'";
rs = stmt.executeQuery( sQuery );
rs.next();
int iUserTmp =rs.getInt(1);
//用户名已经存在
if ( iUserTmp > 0 )
{
mySession.setAttribute("errMsg","联系人已经存在!");
return false;
}
//准备往数据库中进行插入
stmt = conn.createStatement();
//插入SQL语句
String sInsertQuery = "insert into address values('" + sUsername + "', '"
+ sFriendName + "', '"
+ sFriendMail +"') ";
stmt.executeUpdate( sInsertQuery );
}
catch(Exception e)
{
e.printStackTrace();
mySession.setAttribute("errMsg","保存联系人信息时出现错误!");
return false;
}
finally
{
try
{
rs.close();
stmt.close();
}catch(Exception ex)
{
}
}
}catch(Exception ex)
{
ex.printStackTrace();
mySession.setAttribute("errMsg","保存联系人信息时出现错误!");
return false;
}
//既然已经保存成功,去掉页面相关信息
myValues.put( "friendName", "" );
myValues.put( "friendMail", "" );
return true;
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -