⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 maddress.java

📁 网络邮件系统
💻 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 + -