- 博客(10)
- 收藏
- 关注
原创 多用户的即时通讯系统项目笔记
文章目录前言一、功能实现和需求二、整体系统分析1. 系统分析2. 公用类总结前言本篇文章记录了编写一个多用户即时聊天系统的过程,系统中会使用多线程的方式来维持每个客户端,但是应该不会涉及epoll之类的IO复用技术。一、功能实现和需求该系统实现的功能有:用户注册登录用户拉取在线用户列表用户之间私聊传输文件群发推送。。未完待续由于本项目没有编写相关的UI界面,因此客户端操作会在命令行窗口执行。其中一级界面和二级界面如下图所示:或许以后会编写UI界面完善。该项目还没使用到数据
2021-04-28 23:14:00
312
1
原创 UDP传送消息Java实现笔记
文章目录前言一、具体代码实现1. 接收方2. 发送方总结前言使用UDP来实现进程间的通信,与TCP实现不同,基于UDP的进程间没有明确哪个是客户端哪个是服务端,某一方将数据封装成一个DatagramPacket对象即可发送。一、具体代码实现1. 接收方主要是使用DatagramSocket和DatagramPacket两个类。代码如下:public class UDPRev{ public static void main(String[] args) throws IOException{
2021-04-26 20:52:53
123
原创 Java的TCP简易socket通信笔记
文章目录前言一、简单通信1. 服务端2. 客户端二、文件上传1. 服务端2. 客户端3. 工具类的实现总结前言使用Java实现进程的TCP连接和Socket通信。一、简单通信实现Server和Client的简单通信。需要实现的功能:Client发送“hello server”至服务端,服务端成功接收后发送“hello Client”。然后关闭服务端和客户端。1. 服务端首先是Server端的代码/**服务端,接收“hello server”语句并发送“hello client”语句*/
2021-04-21 16:35:59
156
原创 Centos上使用Tomcat部署javaweb应用笔记
Centos上使用Tomcat部署javaweb应用笔记前言一、与Centos连接二、安装jdk1.删除原来的jdk2.安装部署javaweb应用1.启动Tomcat2.部署应用前言在纯净版的Centos中安装jdk,启动tomcat,部署应用。系统:Centos7工具:jdk 1.8xshellxftpTomcat 9一、与Centos连接在windows上使用虚拟机安装好centos之后,查看centos所属的ip地址。在windows下启动xshell,与centos进行连接
2021-04-14 20:05:50
117
原创 比之前稍高效:链表实现贪吃蛇
链表版本比数组版本少用了“cls”指令,不需通过更新屏幕状态来实现蛇的移动,核心功能是,通过尾插法和删除链表元素来实现移动。这个版本增加了一些新功能:记录分数,将最高分写入文件,当分数越高,蛇的移动越快。蛇身的定义:(与单链表类似)typedef struct snake { int x, y; struct snake *next;} SNAKE;下面是功能函数:void go
2017-04-21 18:17:14
3298
原创 闪瞎眼低效贪吃蛇:数组实现
主要使用system函数清屏刷新游戏状态,导致墙壁每次循环需要重新绘制,画面异常卡顿。首先定义结构体:typedef struct coor{ int x; int y;} COOR;//主要存储蛇身或者食物的坐标定义蛇身:typedef struct Snake{ COOR sn[MAX];//蛇身 int n;//当前节数 char dir;//蛇方向
2017-04-20 22:58:58
413
原创 基于http传输(二)
文件传输http传输的核心还是基于tcp/ip协议传输,服务器端启动,客户端通过指定的地址以及端口寻找服务器,然后进行连接;在windows下我们主要还是通过socket套接字建立连接:/*服务器端*/WSAStartup(MAKEWORD(2, 0), &wsa_data); /* 初始化 WinSock 资源 */ srv_soc = socket(AF_INET, SOCK_STREA
2017-03-01 10:19:31
376
原创 基于http 的文件传输(一)
基于http 的文件传输(一)http是基于tcp/ip的通信协议,但使用http传输与tcp/ip有一些不同的地方。在使用http时,需要将消息头和消息体打包发送;其中消息头包含了目的主机地址,端口,文件名以及操作指令。消息头大概内容如下:服务器端:char *http_res_hdr_tmpl = "HTTP/1.1 200 OK\r\nServer:i Server <0.1>\r\n"
2017-03-01 10:03:41
4349
原创 8月17日学习笔记
文件的输入与输出 所学函数:fseek(); ftell(); setvbuf(); ungetc(); fflush(); fread(); fwrite(); feof(); ferror();随机存取:fseek()与ftell() fseek(被搜索文件的FILE指针,偏移量(long类型),文件起始点模式); 文件起始点模式: SEEK_SET 文件开始
2016-08-17 10:58:31
329
原创 8.14学习笔记
学习文件的输入与输出,学习的函数:fopen(),fclose(),fprintf(),fsanf(),rewind(),getc(),putc() 关于fopen(): 定义:fopen(In_z const char * Filename, _In_z const char * _Mode); 即fopen(文件名称,打开模式);而打开模式有 “r”:打开一个文本文件,可读取文件 “
2016-08-14 12:21:58
300
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人