项目介绍
该项目简单模仿QQ的聊天模块、项目功能模块包括用户注册、登陆、点击私聊和创建群聊
项目详情
为提升用户体验采用Druid数据源、使用Swing技术开发用户界面、对于客户端服务端的通信采用套接字连接、使用 HashMap实现对用户、用户私聊、群聊界面等的缓存
开发
准备工作:
1.数据源 : Druid 拽~ 阿里数据源 优点:1.降低资源消耗 2.提高响应速率 3.方便管理
1.加载数据源
2.获取连接 Connection
3.执行SQL
4.关闭资源
通过继承.有重复的封装在BasedDao
查询类SQL
select : executeQuery
PreparedStatement
ResultSet
更新类SQL
insert/update/delete
PreparedStatement
//页面 Swing
//页面
JPanel - 盘子 存放各类组件的基础容器
JLabel - 标签 图片也是标签
JTextField - 输入框
JButton - 按钮
JOptionPanel - 提示框(静态方法)
JScrollPane 滚动条
farm.size(400,400); 要删除 pork
//建立连接
使用套接字建立连接
ServerSocket 服务端
-accept(): 返回客户端的Socket
Socket 客户端
工具类抽取
加载资源文件使用 XXX.properties 文件 所以提取为工具类,读取资源文件
传递消息 使用 json字符串
- {“key”:“value”,…}
第三方工具 转换 json序列化概念 str -> Object :json的反序列化 Object -> str :json的序列化
这和以前的序列化功不一样 以前的 序列化是把 对象变为流的形式 Object…()方法之类的
//你想转换 首先得拥有一个 Google的Gson类
/*
* 封装所有公共操作 包括 json 格式
* getResourceAsStream(fileName); 方法会读取当前工程下的资源文件
*
* ctrl 加 shift 加 T 创建测试类
* */
public class