Rumah >Java >javaTutorial >Bagaimana untuk Menyesuaikan Struts2 JSON Plugin Serialization untuk Objek Tertentu?

Bagaimana untuk Menyesuaikan Struts2 JSON Plugin Serialization untuk Objek Tertentu?

Linda Hamilton
Linda Hamiltonasal
2024-12-14 03:37:14221semak imbas

How to Customize Struts2 JSON Plugin Serialization for Specific Objects?

Menyelesaikan Masalah Struts2 JSON Plugin

Struts2 JSON Plugin Functionality

Struts2 JSON Plugin beroperasi dengan menyerikan keseluruhan tindakan ke dalam JSON, tidak termasuk sifat sementara dan sifat tersebut tanpa getter.

Menyesuaikan Pensirian dengan Objek Akar

Untuk menyirikan hanya objek tertentu, anda boleh memanfaatkan atribut "root" dalam struts.xml:

<result type="json">
    <param name="root">
        objectToBeSerialized
    </param>
</result>

Penyelesaian untuk Kes Tertentu

Diberikan struktur data dengan berbilang baris diwakili sebagai "[col1, col2]", anda boleh cipta:

  • Objek Nilai: MyRow dengan medan col1 dan col2
  • Kelas Action dengan senarai MyRow yang dipanggil "rows"
  • Kemas kini Struts.xml untuk menetapkan "akar" kepada "baris"

Contoh Pelaksanaan

Objek Nilai (MyRow.java):

public class MyRow implements Serializable {
    private String col1;
    private String col2;

    // Getters and setters omitted for brevity
}

Kelas tindakan (PartAction.java):

public class PartAction implements Serializable {
    private List<MyRow> rows;

    public List<MyRow> getRows() { return rows; }

    public String finder() {
        rows = new ArrayList<>();
        // Loop through search results and populate rows
        return Action.SUCCESS;
    }
}

Struts.xml:

<package name="default" namespace="/ajax" extends="json-default">
    <action name="finder" class="action.Part" method="finder">
        <result type="json">
            <param name="root">rows</param>
        </result>
    </action>
</package>

Fungsi Panggilan Balik AJAX:

var handledata = function(data) {
    $.each(data, function(index) {
        alert(data[index].col1);
        alert(data[index].col2);
    });
}

Atas ialah kandungan terperinci Bagaimana untuk Menyesuaikan Struts2 JSON Plugin Serialization untuk Objek Tertentu?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn