Java实现LAYIM后端的核心代码,欢迎star

提问 未结 精帖
28 19729
jkxqj
jkxqj VIP2 2016-9-8
悬赏:5飞吻
基于layim的即时通讯系统。 涉及技术:java、springMVC、mybatis、jquery、mongoDB等等。

核心功能
参见 http://www.layui.com/demo/layim.html
我这里实现了后端的全部功能。 包括我踩过的坑:1、java操作mongo 2、离线消息推送的线程同步异步问题等等。

如有疑问或者想探讨,欢迎在github给我提issues,同时欢迎star

https://github.com/jkxqj/JIM
回帖
  • 终于放出来了!!!
    2 回复
  • @Freedom8 哥们,如果觉得有帮助帮我点个star撒~[嘻嘻]
    2 回复
  • @jkxqj 这样啊,看来需要好好看看websocket了
    1 回复
  • @jkxqj 没问题
    0 回复
  • 学习啦 [嘻嘻]
    0 回复
  • @该页无法显示 [嘻嘻]
    0 回复
  • 有没有完整的项目共享一下,好学习一下[嘻嘻]
    0 回复
  • private static LLClient llClient=new LLClient();
    这个方法是干嘛的,源码中没有提供,能否共享一下
    0 回复
  • jkxqj
    2016-9-14
    @笑面依旧 这个是调用服务数据的代码,跟聊天核心功能的关系不大哈,可以自己实现。我还是贴给你看下吧。

    public class LLClient {


    private String CYBERHOUSE_PATH = "http://localhost:8080";

    private RestTemplate template = new RestTemplate();

    // 更改用户在线状态
    public String updUserOnline(int userId, int status) {
    return template.getForObject(CYBERHOUSE_PATH + "/cyberhouse/api/userOnline/updUserOnline?userId={userId}" + "&status={status}",String.class, userId, status);
    }

    // 获取群组成员用户名列表
    public String getGroupUser(int groupId) {
    return template.getForObject(CYBERHOUSE_PATH + "/cyberhouse/api/qun/getSimpleMemberByGroupId?groupId={groupId}", String.class,groupId);
    }

    // 保存好友消息到mongo
    public String saveFriendMessage(JSONObject message) {
    return template.postForObject(CYBERHOUSE_PATH + "/cyberhouse/api/friend/saveMessageToMongo", message,String.class);
    }

    // 保存群组消息mongo
    public String saveGroupMessage(JSONObject message) {
    return template.postForObject(CYBERHOUSE_PATH + "/cyberhouse/api/qun/saveMessageToMongo", message,String.class);
    }
    //获取某人未读好友消息
    public String getUnreadMessage(int userId){
    return template.getForObject(CYBERHOUSE_PATH+"/cyberhouse/api/friend/getUnreadMessage?userId={userId}",String.class,userId);
    }

    //获取某人未读群消息
    public String getUnreadQunMsg(int userId){
    return template.getForObject(CYBERHOUSE_PATH+"/cyberhouse/api/qun/getUnreadQunMsg?userId={userId}",String.class,userId);
    }

    //更新某人未读群消息状态
    public String updateQunMsgStatus(String id){
    return template.getForObject(CYBERHOUSE_PATH+"/cyberhouse/api/qun/updateQunMsgStatus?id={id}",String.class,id);
    }

    //更新某人未读私聊消息状态
    public String updateMessageStatus(String id){
    return template.getForObject(CYBERHOUSE_PATH+"/cyberhouse/api/friend/updateMessageStatus?id={id}",String.class,id);
    }

    //保存某人未读群消息
    public String saveOfflineMsgToMongo(JSONObject message){
    return template.postForObject(CYBERHOUSE_PATH+"/cyberhouse/api/qun/saveOfflineMsgToMongo",message,String.class);
    }

    }
    0 回复
  • jkxqj
    2016-9-14
    @笑面依旧 公司的项目,抱歉不能完整分享,但是核心代码都分享了 。
    0 回复
  • 感觉好难啊,希望可以写一个完整的简单例子就可以了
    0 回复
  • jkxqj
    2016-9-26
    @繁华 不难,主要是websocket你了解一下就行,其他的好友和群组关系都可以自己设计的。
    0 回复
  • jkxqj
    2016-9-29
    @繁华 嗯嗯,websocket也很简单,主要是onOpen和onClose会用就行。
    0 回复
  • 能提供qq交流下么,还有些model里的类能否提供下,UFile,UploadFile
    0 回复
  • jkxqj
    2016-10-19
    @meteoryh VO已经上传github请查看。qq 1434262447
    0 回复
  • 工作的时候不认真,真要用的时候就弄不来。会的不难,难得不会!![泪]
    0 回复
  • @云梭科技Harry http://fly.layui.com/jie/9878.html 希望有帮助
    0 回复
  • KENT
    2017-5-9
    大神您好,能否指点一下数据库表结构和整个项目的大致结构,不胜感激。
    0 回复
  • 数据库能用oracle吗?
    0 回复
  • jkxqj
    2017-5-18
    @你好打劫 可以啊
    0 回复
  • @jkxqj 有例子可以分享给我一下吗?万分感谢!3263231@qq.com
    0 回复
  • jkxqj
    2017-5-26
    @你好打劫 我用的mongo和mysql。这个跟数据库没关系
    0 回复
  • 怎么打不开啊。。。哪个是代码啊
    0 回复
  • @南宫紫心 https://github.com/jkxqj/JIM 打不开?
    0 回复
  • 一路直行
    2017-10-11
    [good]
    0 回复
  • 数据库脚本能分享下不!
    0 回复
  • jkxqj
    2017-11-13
    @indifferent 加我qq,1434262447
    0 回复
  • Guardian322
    2017-12-14
    简单 聊天咨询对话框 后台怎么搞
    0 回复
本帖已设置禁止回复