V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
爱意满满的作品展示区。
netcan
V2EX  ›  分享创造

新手初学 Java,写了一个聊天软件

  •  
  •   netcan ·
    netcan · 2016-12-15 22:26:04 +08:00 · 3962 次点击
    这是一个创建于 2891 天前的主题,其中的信息可能已经有所发展或是发生改变。

    项目地址:https://github.com/netcan/Talk

    下载地址:https://github.com/netcan/Talk/releases/download/v0.44/Talk.by.Netcan.v0.44.zip

    支持的特性:

    • 群聊
    • 私聊
    • 消息提醒
    • 用户状态标记
    • 聊天记录保存
    • 表情支持

    效果图:https://raw.githubusercontent.com/netcan/Talk/master/images/Screenshot%20from%202016-12-15%2020-22-33.png 可以发送表情 https://raw.githubusercontent.com/netcan/Talk/master/images/Screenshot%20from%202016-12-15%2020-24-53.png 服务端 https://raw.githubusercontent.com/netcan/Talk/master/images/Screenshot%20from%202016-12-15%2020-49-07.png

    14 条回复    2016-12-27 10:04:52 +08:00
    pouta
        1
    pouta  
       2016-12-15 22:53:38 +08:00 via Android
    还不错的样子
    wwqgtxx
        2
    wwqgtxx  
       2016-12-15 23:27:25 +08:00   ❤️ 1
    可以考虑增加数据校验,传输加密,以及使用线程池来接 accept()方法,减少不必要的线程创建
    netcan
        3
    netcan  
    OP
       2016-12-15 23:37:25 +08:00
    @wwqgtxx 对实时性要求高,长连接,线程池就不合适了吧?确实是没有校验加密,很容易被攻击崩溃。
    wwqgtxx
        4
    wwqgtxx  
       2016-12-16 00:34:24 +08:00   ❤️ 1
    @netcan 线程池基本上不会影响实时性的,只要你不设置线程池的 MAX_VALUE 就行
    其实就算你不设置最大线程数,当客户端数量过多的时候还是会突破系统的最大线程数,这个只能用协程来解决了,毕竟这种简单通讯,为每个 connect 创建一个线程很浪费资源, java 又没有 Python,Golang 他们提供的好用的协程库,这个我也想不到好办法解决
    onlyhot
        5
    onlyhot  
       2016-12-16 00:55:46 +08:00 via iPhone
    赞 就喜欢这种学以致用的作风
    q397064399
        6
    q397064399  
       2016-12-16 06:14:20 +08:00
    富文本如何实现的
    q397064399
        7
    q397064399  
       2016-12-16 06:14:38 +08:00
    好吧,是 moji 文字
    q397064399
        8
    q397064399  
       2016-12-16 06:18:14 +08:00
    @netcan 线程池 可以复用,尽量采用线程池 ,而不是自己手动创建 销毁
    小规模应用程序,无所谓
    netcan
        9
    netcan  
    OP
       2016-12-16 07:09:51 +08:00 via Android
    @q397064399 了解了
    jsjjdzg
        10
    jsjjdzg  
       2016-12-16 10:59:55 +08:00
    现在的初学者好叼~
    tl3shi
        11
    tl3shi  
       2016-12-16 23:51:40 +08:00
    netcan
        12
    netcan  
    OP
       2016-12-17 07:40:58 +08:00 via Android
    @tl3shi ....早期 qq
    hweining
        13
    hweining  
       2016-12-20 18:05:49 +08:00
    JavaFX 实现的?好棒
    netcan
        14
    netcan  
    OP
       2016-12-27 10:04:52 +08:00 via Android
    @hweining 对,比较简洁
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   5574 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 25ms · UTC 01:36 · PVG 09:36 · LAX 17:36 · JFK 20:36
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.