springboot--websocket簡單demo(一):session chat


最近跟着大佬 https://tycoding.cn/2019/06/16/project/boot-chat/

敲了2個關於websocket的demo,總結一下

從將會話信息保存在session中,缺點,項目啟動后,對話必須在同一瀏覽器打開,才可以避免消息丟失

1.pom文件引入相關依賴

        <!--websocket-->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-websocket</artifactId>
        </dependency>
        <!--web-->
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-web</artifactId>
        </dependency>
        <!--lombok-->
        <dependency>
            <groupId>org.projectlombok</groupId>
            <artifactId>lombok</artifactId>
            <optional>true</optional>
        </dependency>
        <dependency>
            <groupId>org.springframework.boot</groupId>
            <artifactId>spring-boot-starter-thymeleaf</artifactId>
        </dependency>
        <!--fastjson-->
        <dependency>
            <groupId>com.alibaba</groupId>
            <artifactId>fastjson</artifactId>
            <version>1.2.54</version>
        </dependency>

2.application.yml進行配置

 

 

 3.創建user對象--封裝用戶信息,Message對象,儲存對話信息

 

 

 4.編寫接口ChatSessionService及其impl實現類,獲取在線用戶、實現信息推送

 

 

 5.創建HttpSessionConfig類,從websocket對象獲取HttpSession

 

 

 6.創建websocketServerEndPoint實例對象(包含websocket各生命周期),添加@ServerEndPoint注解,將HttpSessionConfig配置進去(從websocket獲取session)

 

 7.controller層實現路由控制和接口跳轉&前端頁面&js實現

 

 可以從github上clone我的或者大佬的代碼

我的git地址:https://github.com/AliceSunCong/session-chat

大佬的git地址:https://github.com/TyCoding/boot-chat/tree/master/session-chat

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM