日本综合一区二区|亚洲中文天堂综合|日韩欧美自拍一区|男女精品天堂一区|欧美自拍第6页亚洲成人精品一区|亚洲黄色天堂一区二区成人|超碰91偷拍第一页|日韩av夜夜嗨中文字幕|久久蜜综合视频官网|精美人妻一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問(wèn)題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營(yíng)銷(xiāo)解決方案
JavaSocket通信的序列化和反序列化代碼介紹

Java Socket通信要如何才能把序列化和反序列化做好呢?這個(gè)問(wèn)題需要我們不斷的進(jìn)行學(xué)習(xí)有關(guān)代碼,在以往的使用中有很多的經(jīng)驗(yàn)值得我們學(xué)習(xí)。下面我們就詳細(xì)的學(xué)習(xí)下有關(guān)的代碼。#t#

在Java Socket通信中,我們要在客戶端和服務(wù)端中傳輸數(shù)據(jù),傳輸?shù)臄?shù)據(jù)有各種類(lèi)型,int,short,long以及String,甚至是自定義的各種Object,我們?nèi)绾文軌虮WC在服務(wù)端和客戶端之間的數(shù)據(jù)能夠使得兩端都能理解,這就是所謂的“應(yīng)用協(xié)議”;在通信的“管道”中,流的都是二進(jìn)制數(shù)據(jù),所以,雙方如何約定好“解析規(guī)則”,則就必須要求通信雙方都預(yù)先制定好協(xié)議;

序列化和反序列化

在Java Socket通信中,有一個(gè)借口Serializable接口,這個(gè)接口不需要實(shí)現(xiàn)實(shí)現(xiàn)任何方法,只是一個(gè)標(biāo)識(shí),Java 序列化技術(shù)可以使你將一個(gè)對(duì)象的狀態(tài)寫(xiě)入一個(gè)Byte 流里,并且可以從其它地方把該Byte 流里的數(shù)據(jù)讀出來(lái)。重新構(gòu)造一個(gè)相同的對(duì)象。這種機(jī)制允許你將對(duì)象通過(guò)網(wǎng)絡(luò)進(jìn)行傳播,并可以隨時(shí)把對(duì)象持久化到數(shù)據(jù)庫(kù)、文件等系統(tǒng)里。

代碼如下:

 
 
 
  1. Person:  
  2. import java.io.Serializable;  
  3. import java.util.Date;  
  4. public class Person implements Serializable {  
  5. private String name;  
  6. private int tall;  
  7. private transient Date birthday;  
  8. private Address address;  
  9. public String getName() {  
  10. return name;  
  11. }  
  12. public void setName(String name) {  
  13. this.name = name;  
  14. }  
  15. public int getTall() {  
  16. return tall;  
  17. }  
  18. public void setTall(int tall) {  
  19. this.tall = tall;  
  20. }  
  21. public Date getBirthday() {  
  22. return birthday;  
  23. }  
  24. public void setBirthday(Date birthday) {  
  25. this.birthday = birthday;  
  26. }  
  27. public Address getAddress() {  
  28. return address;  
  29. }  
  30. public void setAddress(Address address) {  
  31. this.address = address;  
  32. }  
  33. }  
  34. Address:  
  35. package stream.demo;  
  36. import java.io.Serializable;  
  37. public class Address implements Serializable{  
  38. private String city;  
  39. private String street;  
  40. public Address() {  
  41. }  
  42. public Address(String city, String street) {  
  43. this.city = city;  
  44. this.street = street;  
  45. }  
  46. public String getCity() {  
  47. return city;  
  48. }  
  49. public void setCity(String city) {  
  50. this.city = city;  
  51. }  
  52. public String getStreet() {  
  53. return street;  
  54. }  
  55. public void setStreet(String street) {  
  56. this.street = street;  
  57. }  
  58. }  
  59. Person:  
  60. import java.io.Serializable;  
  61. import java.util.Date;  
  62. public class Person implements Serializable {  
  63. private String name;  
  64. private int tall;  
  65. private transient Date birthday;  
  66. private Address address;  
  67. public String getName() {  
  68. return name;  
  69. }  
  70. public void setName(String name) {  
  71. this.name = name;  
  72. }  
  73. public int getTall() {  
  74. return tall;  
  75. }  
  76. public void setTall(int tall) {  
  77. this.tall = tall;  
  78. }  
  79. public Date getBirthday() {  
  80. return birthday;  
  81. }  
  82. public void setBirthday(Date birthday) {  
  83. this.birthday = birthday;  
  84. }  
  85. public Address getAddress() {  
  86. return address;  
  87. }  
  88. public void setAddress(Address address) {  
  89. this.address = address;  
  90. }  
  91. }  
  92. Address:  
  93. package stream.demo;  
  94. import java.io.Serializable;  
  95. public class Address implements Serializable{  
  96. private String city;  
  97. private String street;  
  98. public Address() {  
  99. }  
  100. public Address(String city, String street) {  
  101. this.city = city;  
  102. this.street = street;  
  103. }  
  104. public String getCity() {  
  105. return city;  
  106. }  
  107. public void setCity(String city) {  
  108. this.city = city;  
  109. }  
  110. public String getStreet() {  
  111. return street;  
  112. }  
  113. public void setStreet(String street) {  
  114. this.street = street;  

以上就是對(duì)Java Socket通信的詳細(xì)介紹,希望大家找到自己?jiǎn)栴}的答案。


當(dāng)前題目:JavaSocket通信的序列化和反序列化代碼介紹
網(wǎng)頁(yè)網(wǎng)址:http://www.dlmjj.cn/article/ccoedih.html