package com.myqq.user.dao;
import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.Statement;
import java.util.ArrayList;
import java.util.List;
import com.myqq.entity.User;
import com.myqq.util.ConnectionUtil;
public class UserDaoImpl {
public User getUser(int qqNum){
try{
//获取数据库连接
Connection con=ConnectionUtil.getCon();
//创建statement
PreparedStatement pstm=con.prepareStatement(
"select * from users u where u.qqnum=?");
//设置参数,针对?占位符
pstm.setInt(1, qqNum);
//执行sql语句
ResultSet rs=pstm.executeQuery();
User u=null;
while(rs.next()){
u=new User();
u.setQqnum(rs.getInt(1));
u.setNickName(rs.getString(2));
u.setPassword(rs.getString(3));
u.setRegistTime(rs.getDate(4));
u.setGender(rs.getString(5));
u.setIntroduce(rs.getString(6));
u.setIp(rs.getString(7));
}
//关闭连接
ConnectionUtil.closeCon(rs, pstm, con);
return u;
}catch(Exception e){
e.printStackTrace();
return null;
}
}
/**
* 新增用户信息
* @param u
* @return
*/
public boolean saveUser(User u){
try{
//获取数据库连接
Connection con=ConnectionUtil.getCon();
//创建statement
PreparedStatement pstm=con.prepareStatement(
"insert into users(nickName,password,registTime,"
+ "gender,introduce,ip) values(?,?,?,?,?,?)",
Statement.RETURN_GENERATED_KEYS);
//设置参数,针对?占位符
pstm.setString(1, u.getNickName());
pstm.setString(2, u.getPassword());
pstm.setString(3, u.getRegistTime().toLocaleString());
pstm.setString(4, u.getGender());
pstm.setString(5, u.getIntroduce());
pstm.setString(6, u.getIp());
//执行sql语句
int count=pstm.executeUpdate();
ResultSet rs=pstm.getGeneratedKeys();
if(rs.next())
System.out.println(rs.getInt(1));
//关闭连接
ConnectionUtil.closeCon(rs, pstm, con);
if(count>0)
return true;
else
return false;
}catch(Exception e){
e.printStackTrace();
return false;
}
}
public boolean updatePassword(int qqNum, String password){
Connection con=null;
PreparedStatement pstm=null;
try{
List<User> list=new ArrayList<User>();
con=ConnectionUtil.getCon();
pstm=con.prepareStatement(
"update users set password=? where qqNum=?");
pstm.setString(1, password);
pstm.setInt(2, qqNum);
int count=pstm.executeUpdate();
if(count>0)
return true;
else
return false;
}catch(Exception e){
e.printStackTrace();
return false;
}finally{
ConnectionUtil.closeCon(null, pstm, con);
}
}
public void updateIp(int qqNum, String ip){
Connection con=null;
PreparedStatement pstm=null;
try{
con=ConnectionUtil.getCon();
pstm=con.prepareStatement(
"update users set ip=? where qqNum=?");
pstm.setString(1, ip);
pstm.setInt(2, qqNum);
pstm.executeUpdate();
}catch(Exception e){
e.printStackTrace();
}finally{
ConnectionUtil.closeCon(null, pstm, con);
}
}
/**
* 按用户qq号和密码查询用户
* @param qqNum
* @param password
* @return
*/
public User findByQqNumAndPassword(int qqNum, String password){
try{
//获取数据库连接
Connection con=ConnectionUtil.getCon();
//创建statement
PreparedStatement pstm=con.prepareStatement(
"select * from users u where u.qqnum=? and u.password=?");
//设置参数,针对?占位符
pstm.setInt(1, qqNum);
pstm.setString(2, password);
//执行sql语句
ResultSet rs=pstm.executeQuery();
User u=null;
while(rs.next()){
u=new User();
u.setQqnum(rs.getInt(1));
u.setNickName(rs.getString(2));
u.setPassword(rs.getString(3));
u.setRegistTime(rs.getDate(4));
u.setGender(rs.getString(5));
u.setIntroduce(rs.getString(6));
u.setIp(rs.getString(7));
}
//关闭连接
ConnectionUtil.closeCon(rs, pstm, con);
return u;
}catch(Exception e){
e.printStackTrace();
return null;
}
}
public List<User> findFriendByQqNum(int qqNum){
Connection con=null;
PreparedStatement pstm=null;
ResultSet rs=null;
try{
List<User> list=new ArrayList<User>();
con=ConnectionUtil.getCon();
pstm=con.prepareStatement(
"select * from users u where u.qqnum<>?");
pstm.setInt(1, qqNum);
rs=pstm.executeQuery();
while(rs.next()){
User u=new User();
u.setQqnum(rs.getInt(1));
u.setNickName(rs.getString(2));
u.setPassword(rs.getString(3));
u.setRegistTime(rs.getDate(4));
u.setGender(rs.getString(5));
u.setIntroduce(rs.getString(6));
u.setIp(rs.getString(7));
list.add(u);
}
return list;
}catch(Exception e){
e.printStackTrace();
return null;
}finally{
ConnectionUtil.closeCon(rs, pstm, con);
}
}
}
没有合适的资源?快使用搜索试试~ 我知道了~
myqq.zip_源码
共38个文件
java:18个
class:18个
project:1个
1.该资源内容由用户上传,如若侵权请联系客服进行举报
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
2.虚拟产品一经售出概不退款(资源遇到问题,请及时私信上传者)
版权申诉
0 下载量 62 浏览量
2022-09-19
22:55:48
上传
评论
收藏 38KB ZIP 举报
温馨提示
这是用java写的一个简单的qq软件,,,,,,,,,,,,,,
资源详情
资源评论
资源推荐
收起资源包目录
myqq.zip (38个子文件)
myqq
bin
com
myqq
user
dao
UserDaoImpl.class 5KB
view
MainFrame.class 3KB
BtnListener.class 2KB
TreeMouseListener.class 3KB
LoginFrame.class 2KB
Run.class 499B
service
UserServiceImpl.class 1KB
message
dao
MessageDaoImpl.class 2KB
view
BtnListener.class 2KB
ChatFrame.class 2KB
service
ServerThread.class 3KB
ClientThread.class 1KB
MessageServiceImpl.class 633B
entity
User.class 2KB
Message.class 2KB
util
IpUtil.class 729B
SerializableUtil.class 2KB
ConnectionUtil.class 2KB
src
com
myqq
user
dao
UserDaoImpl.java 5KB
view
LoginFrame.java 1KB
Run.java 150B
TreeMouseListener.java 2KB
BtnListener.java 761B
MainFrame.java 2KB
service
UserServiceImpl.java 918B
message
dao
MessageDaoImpl.java 1KB
view
ChatFrame.java 1KB
BtnListener.java 1KB
service
MessageServiceImpl.java 307B
ClientThread.java 652B
ServerThread.java 2KB
entity
User.java 1KB
Message.java 1KB
util
ConnectionUtil.java 961B
SerializableUtil.java 2KB
IpUtil.java 329B
.project 380B
.classpath 313B
共 38 条
- 1
局外狗
- 粉丝: 64
- 资源: 1万+
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
评论0