คำถามติดแท็ก serialization

การทำให้เป็นอนุกรมเป็นกระบวนการที่โครงสร้างข้อมูลจะถูกแปลงเป็นรูปแบบที่สามารถจัดเก็บหรือส่งได้อย่างง่ายดายและสร้างขึ้นใหม่ในภายหลัง

13
เหตุใด Java จึงต้องการอินเตอร์เฟสแบบอนุกรม
เราทำงานอย่างหนักกับการทำให้เป็นอนุกรมและการต้องระบุแท็กต่อเนื่องบนวัตถุทุกชิ้นที่เราใช้ถือเป็นภาระ โดยเฉพาะอย่างยิ่งเมื่อเป็นคลาสของบุคคลที่สามที่เราไม่สามารถเปลี่ยนแปลงได้จริงๆ คำถามคือ: เนื่องจาก Serializable เป็นอินเทอร์เฟซที่ว่างเปล่าและ Java ให้ซีเรียลไลเซชั่นที่แข็งแกร่งเมื่อคุณเพิ่ม implements Serializable- ทำไมพวกเขาไม่ทำให้ทุกอย่างเป็นอนุกรมและนั่นล่ะ ฉันขาดอะไรไป?

5
การแยกวิเคราะห์ JSON โดยใช้ Json.net
ฉันพยายามแยกวิเคราะห์ JSON โดยใช้ไลบรารี JSon.Net เอกสารดูเหมือนจะเบาบางเล็กน้อยและฉันก็สับสนว่าจะทำอย่างไรให้บรรลุสิ่งที่ต้องการ นี่คือรูปแบบสำหรับ JSON ที่ฉันต้องแยกวิเคราะห์ { "displayFieldName" : "OBJECT_NAME", "fieldAliases" : { "OBJECT_NAME" : "OBJECT_NAME", "OBJECT_TYPE" : "OBJECT_TYPE" }, "positionType" : "point", "reference" : { "id" : 1111 }, "objects" : [ { "attributes" : { "OBJECT_NAME" : "test name", "OBJECT_TYPE" : "test type" }, "position" : …


11
ฉันจะใช้ Serializer แบบกำหนดเองกับ Jackson ได้อย่างไร
ฉันมีคลาส Java สองคลาสที่ฉันต้องการทำให้เป็นอนุกรมกับ JSON โดยใช้ Jackson: public class User { public final int id; public final String name; public User(int id, String name) { this.id = id; this.name = name; } } public class Item { public final int id; public final String itemNr; public final User createdBy; public Item(int …

3
ฉันจะใช้ ISerializable ใน. NET 4+ โดยไม่ละเมิดกฎความปลอดภัยในการสืบทอดได้อย่างไร
ความเป็นมา: Noda Timeมีโครงสร้างที่ต่อเนื่องกันได้มากมาย แม้ว่าฉันไม่ชอบการทำให้เป็นอนุกรมไบนารี แต่เราก็ได้รับคำขอให้สนับสนุนมากมายกลับมาในไทม์ไลน์ 1.x เราสนับสนุนโดยใช้ISerializableอินเทอร์เฟซ เราได้รับเมื่อเร็ว ๆ นี้รายงานปัญหาของ Noda เวลา 2.x ล้มเหลวภายใน .NET ซอ รหัสเดียวกันที่ใช้ Noda Time 1.x ทำงานได้ดี ข้อยกเว้นที่เกิดขึ้นคือ: กฎความปลอดภัยในการสืบทอดถูกละเมิดในขณะที่แทนที่สมาชิก: 'NodaTime.Duration.System.Runtime.Serialization.ISerializable.GetObjectData (System.Runtime.Serialization.SerializationInfo, System.Runtime.Serialization.StreamingContext) " ความสามารถในการเข้าถึงความปลอดภัยของวิธีการลบล้างต้องตรงกับความสามารถในการเข้าถึงความปลอดภัยของวิธีการที่ถูกลบล้าง ฉันได้ จำกัด สิ่งนี้ให้แคบลงเป็นกรอบงานที่กำหนดเป้าหมาย: 1.x เป้าหมาย. NET 3.5 (โปรไฟล์ลูกค้า); 2.x เป้าหมาย. NET 4.5 พวกเขามีความแตกต่างอย่างมากในแง่ของการสนับสนุน PCL เทียบกับ. NET Core และโครงสร้างไฟล์โครงการ แต่ดูเหมือนว่าจะไม่เกี่ยวข้อง ฉันสามารถทำซ้ำสิ่งนี้ในโครงการในพื้นที่ได้ แต่ฉันไม่พบวิธีแก้ปัญหา ขั้นตอนในการสร้างซ้ำใน …

8
เหตุใดเมื่อตัวสร้างถูกใส่คำอธิบายประกอบด้วย @JsonCreator อาร์กิวเมนต์ของมันจึงต้องใส่คำอธิบายประกอบด้วย @JsonProperty
ใน Jackson เมื่อคุณใส่คำอธิบายประกอบตัวสร้างด้วย@JsonCreatorคุณต้องใส่คำอธิบายประกอบข้อโต้แย้งด้วย@JsonProperty. ตัวสร้างนี้ public Point(double x, double y) { this.x = x; this.y = y; } กลายเป็นสิ่งนี้: @JsonCreator public Point(@JsonProperty("x") double x, @JsonProperty("y") double y) { this.x = x; this.y = y; } ฉันไม่เข้าใจว่าทำไมมันถึงจำเป็น คุณช่วยอธิบายได้ไหม?

6
เหตุใด java.util.Optional จึงไม่สามารถต่ออนุกรมได้วิธีการทำให้วัตถุเป็นอนุกรมกับช่องดังกล่าว
คลาส Enum สามารถต่ออนุกรมได้ดังนั้นจึงไม่มีปัญหาในการทำให้วัตถุเป็นอนุกรมกับ enums อีกกรณีคือที่คลาสมีฟิลด์ของคลาส java.util.Optional ในกรณีนี้จะเกิดข้อยกเว้นต่อไปนี้: java.io.NotSerializableException: java.util.Optional วิธีจัดการกับคลาสดังกล่าวจะทำให้เป็นอนุกรมได้อย่างไร เป็นไปได้ไหมที่จะส่งวัตถุดังกล่าวไปยัง Remote EJB หรือผ่าน RMI? นี่คือตัวอย่าง: import java.io.ByteArrayOutputStream; import java.io.IOException; import java.io.ObjectOutputStream; import java.io.Serializable; import java.util.Optional; import org.junit.Test; public class SerializationTest { static class My implements Serializable { private static final long serialVersionUID = 1L; Optional<Integer> value = Optional.empty(); public …

5
ไม่สามารถแยกซีเรียลไลซ์อาร์เรย์ JSON (เช่น [1,2,3]) เป็นประเภท '' ได้เนื่องจากประเภทต้องใช้ออบเจ็กต์ JSON (เช่น {“ name”:“ value”}) เพื่อแยกค่าซีเรียลออกอย่างถูกต้อง
ฉันมี JSON นี้: [ { "Attributes": [ { "Key": "Name", "Value": { "Value": "Acc 1", "Values": [ "Acc 1" ] } }, { "Key": "Id", "Value": { "Value": "1", "Values": [ "1" ] } } ], "Name": "account", "Id": "1" }, { "Attributes": [ { "Key": "Name", "Value": { "Value": …

13
Jackson databind enum ไม่คำนึงถึงตัวพิมพ์เล็กและใหญ่
ฉันจะ deserialize สตริง JSON ที่มีค่า enum ที่ไม่คำนึงถึงตัวพิมพ์เล็กและใหญ่ได้อย่างไร (โดยใช้ Jackson Databind) สตริง JSON: [{"url": "foo", "type": "json"}] และ Java POJO ของฉัน: public static class Endpoint { public enum DataType { JSON, HTML } public String url; public DataType type; public Endpoint() { } } ในกรณีนี้การ deserializing JSON ด้วย"type":"json"จะล้มเหลวในกรณีที่ได้"type":"JSON"ผล แต่ฉันต้องการ"json"ทำงานด้วยเพื่อเหตุผลในการตั้งชื่อ การทำให้ POJO …

9
ฉันจะใช้ form.serialize ของ jQuery ได้อย่างไร แต่ไม่รวมช่องว่าง
ฉันมีแบบฟอร์มการค้นหาที่มีการป้อนข้อความและรายการแบบเลื่อนลงจำนวนหนึ่งที่ส่งผ่าน GET ฉันต้องการมี URL การค้นหาที่สะอาดกว่าโดยการลบช่องว่างออกจากสตริงคำค้นหาเมื่อทำการค้นหา var form = $("form"); var serializedFormStr = form.serialize(); // I'd like to remove inputs where value is '' or '.' here window.location.href = '/search?' + serializedFormStr มีความคิดอย่างไรที่ฉันจะทำสิ่งนี้โดยใช้ jQuery?

8
$ (this) .serialize () - จะเพิ่มค่าได้อย่างไร?
ตอนนี้ฉันมีสิ่งต่อไปนี้: $.ajax({ type: 'POST', url: this.action, data: $(this).serialize(), }); วิธีนี้ใช้งานได้ดี แต่ฉันต้องการเพิ่มมูลค่าให้กับข้อมูลดังนั้นฉันจึงลอง $.ajax({ type: 'POST', url: this.action, data: $(this).serialize() + '&=NonFormValue' + NonFormValue, }); แต่นั่นไม่ได้โพสต์อย่างถูกต้อง มีแนวคิดเกี่ยวกับวิธีเพิ่มรายการลงในสตริงซีเรียลไลซ์หรือไม่? นี่คือตัวแปรหน้าส่วนกลางที่ไม่เจาะจงรูปแบบ

6
<วัตถุ Django> ไม่สามารถต่ออนุกรม JSON ได้
ฉันมีรหัสต่อไปนี้สำหรับการจัดลำดับชุดแบบสอบถาม def render_to_response(self, context, **response_kwargs): return HttpResponse(json.simplejson.dumps(list(self.get_queryset())), mimetype="application/json") และต่อไปนี้คือไฟล์ get_querset() [{'product': &lt;Product: hederello ()&gt;, u'_id': u'9802', u'_source': {u'code': u'23981', u'facilities': [{u'facility': {u'name': {u'fr': u'G\xe9n\xe9ral', u'en': u'General'}, u'value': {u'fr': [u'bar', u'r\xe9ception ouverte 24h/24', u'chambres non-fumeurs', u'chambres familiales',.........]}] ซึ่งฉันต้องทำให้เป็นอนุกรม แต่มันบอกว่าไม่สามารถซีเรียล&lt;Product: hederello ()&gt;ไลซ์ไฟล์. เนื่องจากรายการประกอบด้วยทั้งวัตถุ django และคำสั่ง ความคิดใด ๆ ?

8
วัตถุประสงค์ของ Serialization ใน Java คืออะไร?
ฉันได้อ่านบทความจำนวนมากเกี่ยวกับ Serialization และวิธีการที่ดีและยอดเยี่ยม แต่ไม่มีข้อโต้แย้งใดที่น่าเชื่อเพียงพอ ฉันสงสัยว่าจะมีใครบอกฉันได้จริง ๆ ว่าอะไรคือสิ่งที่เราสามารถบรรลุได้จากการจัดลำดับชั้นเรียน?

11
การทำให้อนุกรม XML ใน Java? [ปิด]
ปิด. คำถามนี้ไม่เป็นไปตามหลักเกณฑ์กองมากเกิน ขณะนี้ยังไม่ยอมรับคำตอบ ต้องการปรับปรุงคำถามนี้หรือไม่ อัปเดตคำถามเพื่อให้เป็นหัวข้อสำหรับ Stack Overflow ปิดให้บริการใน2 ปีที่ผ่านมา ปรับปรุงคำถามนี้ อะนาล็อก Java ของการทำให้อนุกรม XML ของ. NET คืออะไร
104 java  xml  serialization 

13
วิธีการลบ k__BackingField จาก json เมื่อ Deserialize
ฉันได้รับ k_BackingField ใน json ที่ส่งคืนของฉันหลังจากจัดไฟล์ xml เป็นไฟล์. net c # ฉันได้เพิ่ม DataContract และแอตทริบิวต์ DataMember ลงในวัตถุ. net c # แล้ว แต่ฉันไม่ได้รับอะไรเลยใน json, client end [XmlRoot("person")] [Serializable] public class LinkedIn { [XmlElement("id")] public string ID { get; set; } [XmlElement("industry")] public string Industry { get; set; } [XmlElement("first-name")] public string FirstName { …

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.