- 博客(14)
- 收藏
- 关注
原创 Netty+SpringBoot+FastDFS+MUI 实现聊天App详解(六)
Netty+SpringBoot+FastDFS+MUI实现聊天App(六)本章将给聊天App TigerChat加上心跳机制。为什么要实现心跳机制如果没有特意的设置某些选项或者实现应用层心跳包,TCP空闲的时候是不会发送任何数据包。也就是说,当一个TCP的socket,客户端与服务端谁也不发送数据,会一直保持着连接。这其中如果有一方异常掉线(例如死机、路由被破坏、防火墙切断连接等),另一端...
2020-04-02 21:49:35 193
原创 Netty+SpringBoot+FastDFS+MUI 实现聊天App详解(五)
Netty+SpringBoot+FastDFS+MUI实现聊天App(五)移除方法与处理异常方法的重写在ChatHandler中重写其移除channel的方法handlerRemoved,以及处理异常的方法exceptionCaught。 @Override public void handlerRemoved(ChannelHandlerContext ctx) throw...
2020-04-02 21:48:57 177
原创 Netty+SpringBoot+FastDFS+MUI 实现聊天App详解(四)
Netty+SpringBoot+FastDFS+MUI实现聊天App详解(四)本章内容 (1)查询好友列表的接口 (2)通过或忽略好友请求的接口 (3)添加好友功能展示查询好友列表的接口 /** * @Description: 查询我的好友列表 */ @PostMapping("/myFriends") public TigerChat...
2020-04-02 21:48:16 166
原创 Netty+SpringBoot+FastDFS+MUI 实现聊天App详解(三)
Netty+SpringBoot+FastDFS+MUI实现聊天App详解(三)本节主要讲解聊天App tigerChat中关于好友申请的发送与接受。包含以下内容: (1)搜索好友接口 (2)发送添加好友申请的接口 (3)接受添加好友申请的接口搜索好友接口定义枚举类型 SearchFriendsStatusEnum,表示添加好友的前置状态 SUCCESS(0, "OK"...
2020-04-02 21:47:42 177
原创 Netty+SpringBoot+FastDFS+MUI 实现聊天App详解(二)
Netty+SpringBoot+FastDFS+MUI实现聊天App详解(二)本节主要讲解聊天App tigerChat中关于用户信息处理,以及文件服务器FastDFS的相关操作。包含以下内容: (1)注册与登录功能 (2)文件服务器的配置 (3)上传用户头像 (4)设置用户昵称 (5)用户二维码的生成与上传注册与登录功能自定义一个工具类IMoocJSONResult...
2020-04-02 21:46:30 243
原创 Netty+SpringBoot+FastDFS+MUI 实现聊天App详解(一)
Netty+SpringBoot+FastDFS+MUI实现聊天App详解(一)Netty学习IO编程与NIO编程传统IO编程性能分析IO编程模型在客户端较少的情况下运行良好,但是对于客户端比较多的业务来说,单机服务端可能需要支撑成千上万的连接,IO模型可能就不太合适了。这是因为在传统的IO模型中,每个连接创建成功之后都需要一个线程来维护,每个线程包含一个while死循环,那么1w个连接对...
2020-04-02 21:45:00 336
原创 项目介绍
TigerChat数据库用户表face_image为用户的头像,需要保存小图与大图,qrcode为该用户对应的二维码朋友关系表好友申请表记录发送好友请求申请的数据表聊天记录表sign_flag表示消息的签收状态,为0表示未签收,为1表示已签收项目结构utils包FileUtils 主要提供了一些与文件相关的操作IMoocJSONResult 是自定义的响应给前端的...
2020-04-02 21:38:38 362
原创 fastDFS、Nginx 搭建
腾讯云配置公网IP: 193.112.213.xxx私网IP: 172.16.0.8搭建 fastDFS、Nginx1. 环境准备名称说明centos7.xlibfatscommonFastDFS分离出的一些公用函数包FastDFSFastDFS本体fastdfs-nginx-moduleFastDFS和nginx的关联模块nginx...
2020-04-02 21:30:57 99
原创 13. 罗马数字转整数
题目描述罗马数字包含以下七种字符: I, V, X, L, C, D, M.例如,罗马数字 2 写做 II ,即为两个并列的 1 . 12 写做 XII ,即为 X + II . 27 写做 XXVII ,即为 XX + V + II .通常情况下,罗马数字中小的数字在大的数字的右边. 但也存在特例,例如 4 不写做 IIII ,而是 IV . 数字 1 在数字 5 的左边,所表示的...
2019-11-08 21:38:11 146
原创 9. 回文数
题目描述判断一个整数是否是回文数. 回文数是指 正序(从左向右) 和 倒序(从右向左) 读都是一样的整数.示例 1输入: 121输出: true示例 2输入: -121输出: false解释: 从左向右读,为 -121 . 从右向左读,为 121- . 因此它不是一个回文数。示例 3输入: 10输出: false解释: 从右向左读,为 01 . 因此它不是一个回...
2019-11-07 21:07:29 100
原创 7. 整数反转
题目描述给出一个 32 位的有符号整数,你需要将这个整数中每位上的数字进行反转.示例 1输入: 123输出: 321示例 2输入: -123输出: -321示例 3输入: 120输出: 21注意假设我们的环境只能存储得下 32 位的有符号整数,则其数值范围为 [−231{-2^{31}}−231, 231−1{2^{31}}-1231−1]. 请根据这个假设,...
2019-11-06 17:08:06 95
原创 1. 两数之和
题目描述给定一个整数数组 nums 和一个目标值 target ,请你在该数组中找出和为目标值的那两个整数,并返回他们的数组下标.你可以假设每种输入只会对应一个答案. 但是,你不能重复利用这个数组中同样的元素.示例输入: nums = [2, 7, 11, 15] , target = 9输出: [0, 1] (nums[0] + nums[1] = 2 + 7 = 9)解题思路...
2019-11-03 20:30:45 109
原创 2. 策略模式
策略模式在现实生活中常常遇到实现某种目标存在多种策略可供选择的情况. 例如,出行旅游可以乘坐飞机、乘坐火车、骑自行车或自己开私家车等,超市促销可以釆用打折、送商品、送积分等方法.在软件开发中也常常遇到类似的情况,当实现某一个功能存在多种算法或者策略,我们可以根据环境或者条件的不同选择不同的算法或者策略来完成该功能,如数据排序策略有冒泡排序、选择排序、插入排序、二叉树排序等.如果使用多重条件转...
2019-11-02 19:10:55 215
原创 1. 单例模式
单例模式a. 饿汉式// final 不允许被继承public final class Singleton { // 实例变量 private byte[] data = new byte[1024]; // 在定义实例对象的时候直接初始化 private static final Singleton instance = new Singleto...
2019-11-01 21:30:30 253
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人