package net.chat;
import java.sql.*;
import java.text.SimpleDateFormat;
public class ChatRoom {
/**
* 判断用户是否在聊天室被踢出聊天室
* */
public boolean denyUser(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 false;
}
else
return true;
}catch(SQLException ex)
{
ex.printStackTrace();
throw ex;
}catch(ClassNotFoundException ex)
{
ex.printStackTrace();
throw ex;
}
finally
{
conn.closeDB();
}
}
/**
* 用户离开聊天室的时候,将用户从在线人员表中删除
* */
public void logout(String userName)
throws SQLException,ClassNotFoundException
{
BaseConn conn=null;
try
{
conn=new BaseConn();
String sql = "delete from onlineUser where nickName=?";
PreparedStatement ps = conn.preparedStatement(sql);
ps.setString(1,userName);
conn.executeUpdate();
}catch(SQLException ex)
{
ex.printStackTrace();
throw ex;
}catch(ClassNotFoundException ex)
{
ex.printStackTrace();
throw ex;
}finally
{
conn.closeDB();
}
}
/**
* 换房间,将用户从原来的聊天室在线用户表中删除
* */
public void changeRoom(String userName,String chatRoom)
throws SQLException,ClassNotFoundException
{
BaseConn conn=null;
try
{
conn=new BaseConn();
String sql = "delete from onlineUser where nickName=? and chatRoom=?";
PreparedStatement ps = conn.preparedStatement(sql);
ps.setString(1,userName);
ps.setString(2,chatRoom);
conn.executeUpdate();
}catch(SQLException ex)
{
ex.printStackTrace();
throw ex;
}catch(ClassNotFoundException ex)
{
ex.printStackTrace();
throw ex;
}finally
{
conn.closeDB();
}
}
/**
* 检查用户是不是管理员,如果是管理员返回true,如果不是返回false;
* */
public boolean checkAdmin(String userName) throws SQLException,ClassNotFoundException
{
BaseConn conn = null;
try
{
conn = new BaseConn();
String sql="select role from userInfo where nickName=?";
PreparedStatement ps = conn.preparedStatement(sql);
ps.setString(1,userName);
ResultSet rs = conn.executeQuery();
if(rs.next())
{
if(rs.getInt("role")==1)
return true;
else
return false;
}
else
return false;
}catch(SQLException ex)
{
ex.printStackTrace();
throw ex;
}catch(ClassNotFoundException ex)
{
ex.printStackTrace();
throw ex;
}finally
{
conn.closeDB();
}
}
/**
* 将用户踢出聊天室
* */
public void kickUser(String userName,String chatRoom)
throws SQLException ,ClassNotFoundException
{
BaseConn conn = null;
try
{
conn = new BaseConn();
String sql="delete from onlineUser where nickName=? and chatRoom = ?";
PreparedStatement ps = conn.preparedStatement(sql);
ps.setString(1,userName);
ps.setString(2,chatRoom);
conn.executeUpdate();
SimpleDateFormat cal = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String time = cal.format(new java.util.Date());
//在聊天信息表中添加一条踢人的系统公告
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>is kicked out of chatroom by admin !!!");
conn.executeUpdate();
}catch(SQLException ex)
{
ex.printStackTrace();
throw ex;
}catch(ClassNotFoundException ex)
{
ex.printStackTrace();
throw ex;
}finally
{
conn.closeDB();
}
}
/**
* 删除用户
* */
public void deleteUser(String userName)
throws SQLException,ClassNotFoundException
{
BaseConn conn = null;
try
{
conn = new BaseConn();
String sql="delete from onlineUser where nickName=?";
PreparedStatement ps = conn.preparedStatement(sql);
ps.setString(1,userName);
conn.executeUpdate();
sql="delete from userInfo where nickName=?";
ps=conn.preparedStatement(sql);
ps.setString(1,userName);
conn.executeUpdate();
}catch(SQLException ex)
{
ex.printStackTrace();
throw ex;
}catch(ClassNotFoundException ex)
{
ex.printStackTrace();
throw ex;
}finally
{
conn.closeDB();
}
}
}
没有合适的资源?快使用搜索试试~ 我知道了~
聊天室+jsp+mysql
共84个文件
jsp:34个
jar:12个
class:10个
4星 · 超过85%的资源 需积分: 12 12 下载量 69 浏览量
2014-09-20
09:15:26
上传
评论
收藏 3.1MB RAR 举报
温馨提示
用java+mysql做的聊天室,上面有代码,是从别的网站上下载出来的 共初学的朋友同学们使用
资源推荐
资源详情
资源评论
收起资源包目录
jsp在线聊天室源码(很详细).rar (84个子文件)
chartroom
show.jsp 952B
chklogin.jsp 2KB
.project 1KB
WEB-INF
classes
net
chat
CheckLogin.class 3KB
ChatRoom.class 4KB
Message.class 2KB
BaseConn.class 3KB
ChatRoomList.class 3KB
lib
mssqlserver.jar 66KB
msbase.jar 280KB
jstl-1.2.jar 407KB
msutil.jar 58KB
jsf-impl.jar 1.15MB
jsf-api.jar 314KB
sqlserver
mssqlserver.jar 66KB
msbase.jar 280KB
msutil.jar 58KB
web.xml 381B
advanced.jsp 4KB
redirectChatRoom.jsp 910B
logout.jsp 844B
chat.css 531B
.mymetadata 300B
chatRoom.jsp 854B
index.jsp 809B
src
net
chat
CheckLogin.java 3KB
BaseConn.java 3KB
Message.java 2KB
ChatRoomList.java 3KB
ChatRoom.java 5KB
images
2.jpg 73KB
1.jpg 71KB
4.jpg 27KB
0.gif 2KB
Thumbs.db 9KB
changeRoom.jsp 1KB
input.jsp 6KB
WebRoot
show.jsp 775B
chklogin.jsp 2KB
WEB-INF
classes
net
chat
CheckLogin.class 3KB
ChatRoom.class 4KB
Message.class 2KB
BaseConn.class 3KB
ChatRoomList.class 3KB
lib
mssqlserver.jar 66KB
msbase.jar 280KB
msutil.jar 58KB
web.xml 381B
advanced.jsp 4KB
redirectChatRoom.jsp 910B
logout.jsp 844B
chat.css 531B
chatRoom.jsp 854B
index.jsp 809B
images
2.jpg 73KB
1.jpg 71KB
4.jpg 27KB
0.gif 2KB
Thumbs.db 9KB
changeRoom.jsp 1KB
input.jsp 6KB
META-INF
MANIFEST.MF 39B
login.jsp 3KB
sendMsg.jsp 2KB
dabase
chatroom_Data.MDF 1024KB
chatroom_Log.LDF 1024KB
dataValue.jsp 3KB
chkSession.jsp 582B
userList.jsp 2KB
delete.jsp 660B
chatRoomList.jsp 2KB
kick.jsp 695B
.myeclipse
META-INF
MANIFEST.MF 39B
login.jsp 2KB
sendMsg.jsp 2KB
dabase
chatroom_Data.MDF 1024KB
chatroom_Log.LDF 1024KB
dataValue.jsp 3KB
chkSession.jsp 582B
userList.jsp 2KB
.classpath 574B
delete.jsp 660B
chatRoomList.jsp 2KB
kick.jsp 695B
共 84 条
- 1
资源评论
- 明教第三十四代觉主2014-10-09资源很好,完全符合要求,下次还来下载
- ping412015-04-27不是mysql数据库
- 黑哲2014-12-10写的mysql数据库。。。实际上不是。。。坑。。。
??heaven
- 粉丝: 0
- 资源: 1
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 基于yolov5识别算法实现的DNF自动脚本源码.zip
- 基于Python实现的自动化办公项目.zip
- 基于python实现的基于PyQt5和爬虫的小说阅读系统.zip
- 机械设计整经机上纱自动化sw20非常好的设计图纸100%好用.zip
- Screenshot_20240427_031602.jpg
- 网页PDF_2024年04月26日 23-46-14_QQ浏览器网页保存_QQ浏览器转格式(6).docx
- 直接插入排序,冒泡排序,直接选择排序.zip
- 在排序2的基础上,再次对快排进行优化,其次增加快排非递归,归并排序,归并排序非递归版.zip
- 实现了7种排序算法.三种复杂度排序.三种nlogn复杂度排序(堆排序,归并排序,快速排序)一种线性复杂度的排序.zip
- 冒泡排序 直接选择排序 直接插入排序 随机快速排序 归并排序 堆排序.zip
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功