❶ java Socket如何封裝一個電文包
應該定義消息格式,通過指定的消息類型來理解並分類處理消息,一個好的通用型的消息通信模塊應該設計成支持靈活的消息格式,這樣才能做成獨立的模塊,沒有消息格式的代碼只能應用在特定的軟體中,不能移植到被以後的新的項目使用。 例如:
Messagemsg=newMessage("HeartBeat");
msg.setContent("");//心跳消息或許不需要內容。
ps.print(msg.toXML());//把消息編碼成類似<msgtype="1"></msg>
Messagemsg2=newMessage("QQ");
msg.setContent("你好");
ps.print(msg.toXML());//得到<msgtype="2">你好</msg>
服務端通過讀取這個xml就知道它的type是什麼類型的消息。這是基於純文本的消息,如果你希望以二進制類型發送也可以,比如:
前面2位元組是消息長度,第三個位元組是消息類型,後面是消息內容本身,服務端就在讀取時分析是否給定的長度的內容全部收到了,沒有收到就等待,以後按位元組位置找消息頭所說的類型。一般來說用二進制也很靈活,它和純文本沒有什麼差異,但純文本適合聊天之類的軟體,處理起來簡單。現在很多聊天軟體也是基於xml的,比如那個企業QQ就是這樣的(我曾經看到以前的版本的消息內容默認不加密的,可以直接用SQLLiteJDBC驅動讀取消息內容看,全是xml,不知道現在的QQ是不是)。
❷ java中報文啥時候用呢一直搞不懂
你可以了解一下http協議
報文就是一組客戶端和服務端都認可的信息數據。可以是xml形式,json格式。等等
比如有一個android客戶端向服務端發送登陸報文
<user>
<username></username>
<password>123456</password>
</user>
這段由客戶端到服務端的xml,就可以視為一個上行報文
服務端收到報文後會返回登陸成功或者失敗的信息
比如:200(成功)
404 (失敗)
甚至返回更詳細的失敗信息等等這個由服務端到客戶端的返回信息同樣可以是多樣性,可視為下行報文
❸ Java 實現協議裝包,解包
這個包的封裝都是按照具體的協議規范指定的。報文體的內容肯定有的時候會出現變化的。這個不是主要的。注意的是你封裝的報文結構和別人需要的結構是一致的就可以了。
❹ java如何組裝xml報文
可以用 我給你的方式組合xml報文
❺ java 實現抓取本地網卡TCP報文,然後解析,將其寫入資料庫 誰有樣例代碼,或者實現方式,
思路很簡單開發一個小型的WEB應用,部署在長沙和北京兩台伺服器上,安裝個tomact就可以運行和部署了這個WEB應用主要做如下事情:
接受請求,封裝json串 (為什麼JSON可以查一下網上大把的)1)收到http請求後,校驗是否是來自另外一個伺服器的請求(通過判斷請求的IP地址是否否為另外一個伺服器的IP地址即可)2)校驗通過後讀取本地伺服器資料庫,查詢需要實時同步的數據表,查出需要同步的數據,組裝成數據對象集(例如一個arraylist),然後轉換為 json格式串,寫入到response輸出流中。
發請求獲取返回結果,插入/更新資料庫1)從reponse輸出流中讀取返回結果,將JSON串轉化為對象集(網上大把的),然後開始更新/插入數據/刪除數據——————————————————————————————————————由於涉及三種操作類型 更新 刪除 插入 ,所以可以分別實現三個servlet來分別負責:1)查詢新增數據/插入新增對象2) 查詢更新數據/更新新增對象3)查詢刪除數據/刪除待刪除的對象——————————————————————————————————————定時調度同步程序使用timer寫個jar程序,循環每5分鍾利用httpconnnection一次請求之行下插入/更新/刪除的servlet___________________________________________________________________
❻ 第三方推送Java數據,如何封裝推送失敗的信息
為什麼要返回list<map>集合,你只是想知道是不是成功的話沒有必要返回你傳入的東西啊,如果想加入確定的信息或者錯誤碼我覺得使用RESTFUL 風格的介面會比較好
❼ 在JAVA中什麼是抱文,它是中間插件嗎
報文不是Java中的,是計算機網路里的概念,簡單的說是:
報文就是網路中交換與傳輸的數據單元,報文包含了將要發送的完整的數據信息,它實現封裝.
報文就可以在不同的網路層次中遞交,保證安全,完整的從A地到B地傳輸.
❽ java如何處理icmp報文的收發怎麼都能發成功
你可以用socket編程,java socket是封裝了TCP協議的,不需要你去設置裡面的一些參數了。
❾ 怎麼樣用java發送Tcp報文
你可以用socket編程,java socket是封裝了TCP協議的,不需要你去設置裡面的一些參數了。
你還可以用java jpcap編寫,這個可以發送接收arp,tcp,udp,icmp等各種報文