0

完了するべき小さなプロジェクトがあります。XMLファイルを解析してから、ユーザーインターフェイス(スイング)に表示する必要があります。私はいくつかの調査を行い、SAX解析を試しました。今、私はオブジェクトモデルをUIに変換する方法を考えています。これが私が見つけたチュートリアルリンクです: http ://www.mkyong.com/java/how-to-read-xml-file-in-java-sax-parser/

4

2 に答える 2

2

ここで私たちはあなたがしたいことを成し遂げるために行きます。

import javax.swing.*;
import javax.swing.table.DefaultTableModel;
import java.awt.*;
import java.util.ArrayList;
import java.util.Iterator;

public class JTableComponent {
    public static void main(String[] args) {
        new JTableComponent();
    }

    public JTableComponent() {
        JFrame frame = new JFrame("Creating JTable Component Example!");
        JPanel panel = new JPanel();

        DefaultTableModel aModel = new DefaultTableModel() {
            public boolean isCellEditable(int row, int column) {
                return false;
            }
        };

        Staff s1 = new Staff("vinod1", "BCA", "A", "10000");
        Staff s2 = new Staff("vinod2", "BCA", "A", "20000");
        Staff s3 = new Staff("vinod3", "BCA", "A", "30000");
        Staff s4 = new Staff("vinod4", "BCA", "A", "40000");
        ArrayList<Staff> l = new ArrayList<Staff>();// here you will get parser
                                                    // object this is as sample
        l.add(s1);
        l.add(s2);
        l.add(s3);
        l.add(s4);
        Iterator<Staff> is = l.iterator();

        String col[] = { "firstname", "lastname", "nickname", "salary" };
        aModel.setColumnIdentifiers(col);
        JTable table = new JTable(aModel);
        while (is.hasNext()) {
            Staff t = is.next();
            String firstname = t.getFirstname();
            String lastname = t.getLastname();
            String nickname = t.getNickname();
            String salary = t.getSalary();
            String temp[] = { firstname, lastname, nickname, salary };
            aModel.addRow(temp);
        }
        table.setModel(aModel);
        panel.add(table, BorderLayout.CENTER);

        frame.add(panel);
        frame.setSize(300, 300);
        frame.setVisible(true);
        frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    }
}

表示されたxmlファイルのBean

public class Staff 
{
    String firstname= "";
    String  lastname ="";
    String nickname = "";
    String salary = "";

    public Staff(String firstname,String lastname,String nickname,String salary)
    {
         this.firstname= firstname;
         this.lastname =lastname;
         this.nickname = nickname;
         this.salary = salary;
    }

    public String getFirstname() {
        return firstname;
    }
    public void setFirstname(String firstname) {
        this.firstname = firstname;
    }
    public String getLastname() {
        return lastname;
    }
    public void setLastname(String lastname) {
        this.lastname = lastname;
    }
    public String getNickname() {
        return nickname;
    }
    public void setNickname(String nickname) {
        this.nickname = nickname;
    }
    public String getSalary() {
        return salary;
    }
    public void setSalary(String salary) {
        this.salary = salary;
    }

}
于 2012-10-30T09:40:59.917 に答える
1

XMLEditorKithttp://java-sl.com/xml_editor_kit.html 役立つかもしれません。XMLファイルを解析し、JEditorPane/JTextPaneに表示することができます。

ソースコードを取得して、独自の表現を追加できます。

于 2012-10-30T10:40:10.070 に答える