Java序列化方式有以下幾種:
1. Java默認的序列化:通過實現Serializable接口來實現,默認使用ObjectOutputStream和ObjectInputStream進行對象的序列化和反序列化。
2. 自定義序列化:通過實現Externalizable接口來實現,需要手動實現writeExternal和readExternal方法來控制對象的序列化和反序列化過程。
3. JSON序列化:使用第三方庫,如Jackson、Gson等,將對象轉換成JSON字符串進行序列化,或將JSON字符串轉換成對象進行反序列化。
4. XML序列化:使用第三方庫,如JAXB、XStream等,將對象轉換成XML字符串進行序列化,或將XML字符串轉換成對象進行反序列化。
5. Protocol Buffers序列化:使用Google的Protocol Buffers庫,將對象序列化成二進制格式進行傳輸和存儲。
6. Thrift序列化:使用Apache Thrift庫,將對象序列化成二進制格式進行傳輸和存儲。
7. Avro序列化:使用Apache Avro庫,將對象序列化成二進制格式進行傳輸和存儲。
注意:除了Java默認的序列化方式,其他方式需要引入相應的第三方庫。