📄 chatroomlist.java.bak
字号:
package net.chat;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.text.SimpleDateFormat;
public class ChatRoomList {
/**
* 计算聊天室中的在线人数
* */
public int countUser(String chatRoom)
throws SQLException,ClassNotFoundException
{
BaseConn conn = null;
try
{
conn = new BaseConn();
String sql="select count(*) As intCount from onlineUser where chatRoom=?";
PreparedStatement ps = conn.preparedStatement(sql);
ps.setString(1,chatRoom);
ResultSet rs = conn.executeQuery();
if(rs.next())
return rs.getInt("intCount");
else
return 0;
}catch(SQLException ex)
{
ex.printStackTrace();
throw ex;
}catch(ClassNotFoundException ex)
{
ex.printStackTrace();
throw ex;
}finally
{
conn.closeDB();
}
}
/**
* 有用户登录进入聊天室时,在onlineUser表中添加一个用户
* 首先判断该用户是否已经在聊天室,如果不在聊天室就把该用户添加到聊天室在线用
户表中
* */
public boolean addOnlineUser(String userName,String chatRoom)
throws SQLException,ClassNotFoundException
{
BaseConn conn = null;
try
{
conn = new BaseConn();
//先判断该用户是不是已经在该聊天室
String sql="select*from onlineUser where nickName=? and chatRoom=?";
PreparedStatement ps = conn.preparedStatement(sql);
ps.setString(1,userName);
ps.setString(2,chatRoom);
ResultSet rs = conn.executeQuery();
if(rs.next())
{
return true;
}
else
{
//如果聊天室不存在该用户,将访用户添加到聊天室的在线用户表中
sql="insert into onlineUser(nickName,chatRoom) values(?,?)";
ps = conn.preparedStatement(sql);
ps.setString(1,userName);
ps.setString(2,chatRoom);
conn.executeUpdate();
ps.close();
//获取信息时间,并将时间定义为year-Month-day Hour:minutes:seconds
SimpleDateFormat cal = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String time = cal.format(new java.util.Date());
//在msgInfo表中添加一条系统公告,欢迎新用户进入聊天室
sql = "insert into msgInfo(chatRoom,msgFrom,msgTo,chatTime,msgContent)values(?,?,?,?,?)";
ps = conn.preparedStatement(sql);
ps.setString(1,chatRoom);
ps.setString(2,"system notice");
ps.setString(3,"all people");
ps.setString(4,time);
ps.setString(5,"<font color=red>"+userName+"</font>enter our chatroom,let us welcome him or her");
conn.executeUpdate();
return true;
}
}catch(SQLException ex)
{
ex.printStackTrace();
throw ex;
}catch(ClassNotFoundException ex)
{
ex.printStackTrace();
throw ex;
}finally
{
conn.closeDB();
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -