国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

Java實(shí)現(xiàn)符合交通部標(biāo)JT808和JT1078協(xié)議服務(wù)器的思路

這篇具有很好參考價(jià)值的文章主要介紹了Java實(shí)現(xiàn)符合交通部標(biāo)JT808和JT1078協(xié)議服務(wù)器的思路。希望對大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。

????????“兩客一危一重貨”車輛運(yùn)輸安全是當(dāng)前道路運(yùn)輸安全管理工作的重中之重,相應(yīng)的車輛GPS定位監(jiān)控平臺是監(jiān)控“兩客一危一重貨”車輛運(yùn)輸安全的重要平臺。本系統(tǒng)結(jié)合交通部JT808、JT1078等協(xié)議標(biāo)準(zhǔn),提供Java開發(fā)車載視頻定位監(jiān)控系統(tǒng)的開發(fā)思路。

? ? ? ? 一:JT808協(xié)議解析和服務(wù)器搭建。

? ? ?JT808協(xié)議分為2011版、2013版、2019版本。市面上大多是2013版,少數(shù)2019版。2013和2019版本的最大區(qū)別是報(bào)文固定頭部把手機(jī)號從原來的6字節(jié)BCD碼改成了10字節(jié)BCD碼。

? ? ? ? 2013版報(bào)文頭:

Java實(shí)現(xiàn)符合交通部標(biāo)JT808和JT1078協(xié)議服務(wù)器的思路

? ? ? ? ?2019版報(bào)文頭:

Java實(shí)現(xiàn)符合交通部標(biāo)JT808和JT1078協(xié)議服務(wù)器的思路

? ? ? ? ?對于TCP報(bào)文的解析,消息頭可以使用公共組件,通過版本標(biāo)記解析不同版本的消息頭。消息體用每個(gè)消息自定義的解析格式。

public abstract class JTMessage {

    protected String msgId;//消息編號
    protected String tid;//終端ID
    protected String msgNo;//消息流水

    protected int version;//版本號
    protected int isPack;//分包

????????解析報(bào)文頭:

         //解析報(bào)文頭
        ReadByteFromHex reader = new ReadByteFromHex(msg);
        //=============解析消息頭開始=============
        reader.readByte(1);// 7E
        String msgId = reader.readByte(2);// 消息id
        String msgBodyAttr = reader.readByte(2);// 消息體屬性
        int msgBodyInt = Integer.parseInt(msgBodyAttr, 16);
        boolean isVersion = (msgBodyInt & 0x4000) > 0;// 是否有版本號 取第13位是否為1 0x4000二進(jìn)制是0100000000000000
        int version = 0; //2019版本開始從1遞增
        if (isVersion) {
            version = Integer.parseInt(reader.readByte(1), 16); // 版本號
        }
        //如果版本號大于0 則手機(jī)號為10位
        String tid = version > 0 ? reader.readByte(10) : reader.readByte(6);// 手機(jī)號,當(dāng)做id
        String msgNo = reader.readByte(2);// 消息流水
        // 是否分包
        boolean isPack = (msgBodyInt & 0x2000) > 0;// 是否分包 取第13位是否為1 0x2000二進(jìn)制是0010000000000000
        int packTotal = 0;
        int packNum = 0;
        if (isPack) {
            // 如果有分包則多讀4個(gè)字節(jié)
            packTotal = Integer.parseInt(reader.readByte(2), 16);
            packNum = Integer.parseInt(reader.readByte(2), 16);
        }

        boolean isRSA = (msgBodyInt & 0x400) > 0;// 消息體是否過RSA算法加密; 取第13位是否為1 0x400二進(jìn)制是0000010000000000
        //=============解析消息頭結(jié)束=============

? ? ? ? 解析消息體:

//=============解析消息體開始=============
        String bodyHex = reader.readByte(msgBodyInt & 0x3ff); // 消息體屬性前10位是消息體長度 0x3ff二進(jìn)制是0000001111111111
        if ("0200".equals(msgId)) {//位置上報(bào)
            JTMessage t0200 = new T0200(tid, msgNo);
            t0200.decodeBody(bodyHex);
            return t0200;
        } else if ("0002".equals(msgId)) {//心跳
            JTMessage t0202 = new T0002(tid, msgNo);
            t0202.decodeBody(bodyHex);
            return t0202;
        } else if ("0003".equals(msgId)) {//注銷
            JTMessage t0003 = new T0003(tid, msgNo);
            t0003.decodeBody(bodyHex);
            return t0003;
        } else if ("0100".equals(msgId)) {//注冊
            JTMessage t0100 = new T0100(tid, msgNo);
            t0100.decodeBody(bodyHex);
            return t0100;
        } else if ("0102".equals(msgId)) {//鑒權(quán)
            JTMessage t0102 = new T0102(tid, msgNo);
            t0102.decodeBody(bodyHex);
            return t0102;
        } else if ("0001".equals(msgId)) {//終端通用應(yīng)答
            JTMessage t0001 = new T0001(tid, msgNo);
            t0001.decodeBody(bodyHex);
            return t0001;
        } else if ("0704".equals(msgId)) {//定位數(shù)據(jù)批量上傳
            JTMessage t0704 = new T0704(tid, msgNo);
            t0704.decodeBody(bodyHex);
            return t0704;
        }
        //=============解析消息體結(jié)束=============

二、設(shè)備上報(bào)流程:????????? ? ??Java實(shí)現(xiàn)符合交通部標(biāo)JT808和JT1078協(xié)議服務(wù)器的思路

? ? ? ? 注意,設(shè)備數(shù)據(jù)大批量上報(bào)的情況下,服務(wù)器需要支持高并發(fā),netty作為天然的高并發(fā)框架,可以用作JT808服務(wù)器的接入點(diǎn)。

?三、JT1078服務(wù)器的搭建流程:

? ? ? ? 1078服務(wù)器就是一個(gè)流媒體服務(wù)器,要處理的功能是接收設(shè)備上報(bào)的視頻數(shù)據(jù),解析成瀏覽器能夠播放的格式,并通過websocket或者h(yuǎn)ttp協(xié)議發(fā)送到瀏覽器,瀏覽器解碼觀看視頻。

Java實(shí)現(xiàn)符合交通部標(biāo)JT808和JT1078協(xié)議服務(wù)器的思路

?下面是系統(tǒng)demo演示地址:gps.cachtek.com文章來源地址http://www.zghlxwxcb.cn/news/detail-499965.html

到了這里,關(guān)于Java實(shí)現(xiàn)符合交通部標(biāo)JT808和JT1078協(xié)議服務(wù)器的思路的文章就介紹完了。如果您還想了解更多內(nèi)容,請?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • 【智慧交通】NTP衛(wèi)星授時(shí)服務(wù)器(時(shí)鐘同步)助力交通建設(shè)

    【智慧交通】NTP衛(wèi)星授時(shí)服務(wù)器(時(shí)鐘同步)助力交通建設(shè)

    【智慧交通】NTP衛(wèi)星授時(shí)服務(wù)器(時(shí)鐘同步)助力交通建設(shè) 【智慧交通】NTP衛(wèi)星授時(shí)服務(wù)器(時(shí)鐘同步)助力交通建設(shè) 京準(zhǔn)電子科技官微——ahjzsz 智能交通的發(fā)展一直在不斷演進(jìn),涉及到技術(shù)、政策、社會(huì)和經(jīng)濟(jì)等多個(gè)方面。以下是智能交通發(fā)展的一些關(guān)鍵趨勢和方向:

    2024年03月11日
    瀏覽(23)
  • 使用UDP協(xié)議實(shí)現(xiàn)—翻譯服務(wù)器

    使用UDP協(xié)議實(shí)現(xiàn)—翻譯服務(wù)器

    目錄 前言 1.設(shè)計(jì)思路: 2.詞庫設(shè)計(jì) 3.設(shè)計(jì)客戶端 4.設(shè)計(jì)服務(wù)端 5.編譯客戶端和服務(wù)端 6.測試結(jié)果 7.總結(jié) ? ? ? ? 上一篇文章中,我們使用UDP協(xié)議編碼完成了一個(gè)簡單的服務(wù)器,實(shí)現(xiàn)數(shù)據(jù)通信,服務(wù)器設(shè)計(jì)出來后目的不僅僅只是實(shí)現(xiàn)數(shù)據(jù)通信,而是根據(jù)客戶端發(fā)過來的請求,

    2024年02月13日
    瀏覽(20)
  • 2.1.4websocket協(xié)議與服務(wù)器實(shí)現(xiàn)

    2.1.4websocket協(xié)議與服務(wù)器實(shí)現(xiàn)

    本文基于websocket協(xié)議,在2.1.3http/https服務(wù)器的實(shí)現(xiàn)中TCP服務(wù)器代碼的基礎(chǔ)上實(shí)現(xiàn)websocket服務(wù)器。 websocket的主要應(yīng)用場景 服務(wù)器主動(dòng)推送數(shù)據(jù)給瀏覽器 websocket握手流程(在tcp三次握手之后) 瀏覽器發(fā)送請求 服務(wù)器接收請求并獲取Sec-WebSocket-Key的值并進(jìn)行相應(yīng)的計(jì)算得到Sec-W

    2024年02月02日
    瀏覽(18)
  • vscode無法ssh遠(yuǎn)程連接到服務(wù)器:遠(yuǎn)程主機(jī)可能不符合 glibc 和 libstdc++ VS Code 服務(wù)器的先決條件

    vscode無法ssh遠(yuǎn)程連接到服務(wù)器:遠(yuǎn)程主機(jī)可能不符合 glibc 和 libstdc++ VS Code 服務(wù)器的先決條件

    今天vscode自動(dòng)更新后無法連接到遠(yuǎn)程服務(wù)器了,提示\\\" 遠(yuǎn)程主機(jī)可能不符合 glibc 和 libstdc++ VS Code 服務(wù)器的先決條件 \\\" 并且命令窗口一直顯示\\\" Waiting for server log… \\\" 困擾了我很久,發(fā)現(xiàn)主要原因是vscdoe自動(dòng)更新到了1.86版本,與我遠(yuǎn)程服務(wù)器的glibc版本不符 ? 我是使用了vscode1

    2024年02月22日
    瀏覽(28)
  • Java服務(wù)器調(diào)用Python服務(wù)器進(jìn)行交互:基于Http協(xié)議的Restful風(fēng)格調(diào)用(Springboot/FastApi)

    Java服務(wù)器調(diào)用Python服務(wù)器進(jìn)行交互:基于Http協(xié)議的Restful風(fēng)格調(diào)用(Springboot/FastApi)

    實(shí)現(xiàn)Java服務(wù)器調(diào)用Python服務(wù)器進(jìn)行交互以及數(shù)據(jù)傳輸,可采用以下方法,親測有效: 基于Restful風(fēng)格進(jìn)行請求調(diào)用: 框架 : Java服務(wù)器采用Springboot框架進(jìn)行搭建服務(wù) python服務(wù)器采用FastApi框架進(jìn)行搭建服務(wù) 思路 :前端–Java–python–Java–前端 代碼設(shè)計(jì) :Axios-@PostMapping-請求

    2024年04月26日
    瀏覽(17)
  • 初識http協(xié)議,簡單實(shí)現(xiàn)瀏覽器和服務(wù)器通信

    初識http協(xié)議,簡單實(shí)現(xiàn)瀏覽器和服務(wù)器通信

    平時(shí)俗稱的 “網(wǎng)址” 其實(shí)就是說的 URL,例如在百度上搜索一個(gè)C++ 可以看到這段網(wǎng)址前面有個(gè) https 那么這個(gè)就代表著使用的是https協(xié)議,現(xiàn)在都是使用https協(xié)議,不過還是需要認(rèn)識以下http協(xié)議 像 / ? : 等這樣的字符, 已經(jīng)被url當(dāng)做特殊意義理解了. 因此這些字符不能隨意出現(xiàn)。

    2024年02月14日
    瀏覽(21)
  • 從零開始寫一個(gè)RTSP服務(wù)器(二)RTSP協(xié)議的實(shí)現(xiàn)

    此系列只追求精簡,旨在學(xué)習(xí)RTSP協(xié)議的實(shí)現(xiàn)過程,不追求復(fù)雜完美,所以這里要實(shí)現(xiàn)的RTSP服務(wù)器為了簡單,實(shí)現(xiàn)上同一時(shí)間只能有一個(gè)客戶端,下面開始介紹實(shí)現(xiàn)過程 在寫一個(gè)RTSP服務(wù)器之前,我們必須知道一個(gè)RTSP服務(wù)器最簡單的包含兩部分,一部分是RTSP的交互,一部分是

    2024年04月17日
    瀏覽(25)
  • 【計(jì)算機(jī)網(wǎng)絡(luò)】HTTP協(xié)議以及簡單的HTTP服務(wù)器實(shí)現(xiàn)

    【計(jì)算機(jī)網(wǎng)絡(luò)】HTTP協(xié)議以及簡單的HTTP服務(wù)器實(shí)現(xiàn)

    雖然我們說, 應(yīng)用層協(xié)議是我們程序猿自己定的. 但實(shí)際上, 已經(jīng)有大佬們定義了一些現(xiàn)成的, 又非常好用的應(yīng)用層協(xié)議, 供我們直接參考使用. HTTP(超文本傳輸議)就是其中之一。 平時(shí)我們俗稱的 “網(wǎng)址” 其實(shí)就是說的 URL 像 / ? : 等這樣的字符, 已經(jīng)被url當(dāng)做特殊意義理解了.

    2024年01月20日
    瀏覽(32)
  • nodejs 實(shí)現(xiàn)MQTT協(xié)議的服務(wù)器端和客戶端的雙向交互

    nodejs 實(shí)現(xiàn)MQTT協(xié)議的服務(wù)器端和客戶端的雙向交互

    公司和第三方合作開發(fā)一個(gè)傳感器項(xiàng)目,想要通過電腦或者手機(jī)去控制項(xiàng)目現(xiàn)場的傳感器控制情況?,F(xiàn)在的最大問題在于,現(xiàn)場的邊緣終端設(shè)備接入的公網(wǎng)方式是無線接入,無法獲取固定IP,所以常規(guī)的HTTP協(xié)議通信就沒法做,現(xiàn)在打算使用MQTT來實(shí)現(xiàn)云平臺和邊緣終端(傳感器

    2024年02月05日
    瀏覽(29)
  • esp8266模塊--MQTT協(xié)議連接服務(wù)器實(shí)現(xiàn)數(shù)據(jù)接收和發(fā)送+源碼

    esp8266模塊--MQTT協(xié)議連接服務(wù)器實(shí)現(xiàn)數(shù)據(jù)接收和發(fā)送+源碼

    首先推薦中國移動(dòng)的代碼,我覺得中國移動(dòng)的代碼更為合理:(但是有一些其他的模塊在里面) OneNET開發(fā)板代碼、資料--2020-09-27--標(biāo)準(zhǔn)板、Mini板bug修復(fù) - 開發(fā)板專區(qū) - OneNET設(shè)備云論壇 (10086.cn) 以及這位b站up做的視頻:(wifi模塊在p9節(jié)) 【挽救小白第一季】STM32+8266+小程序智能

    2024年02月08日
    瀏覽(35)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包