Bạn không cần PreparedStatement . Sử dụng org.jfree.data.jdbc.JDBCPieDataset
phương thức khởi tạo chấp nhận truy vấn "trả về dữ liệu trong hai cột, cột đầu tiên chứa VARCHAR dữ liệu và dữ liệu thứ hai chứa dữ liệu số. "Bạn có thể sử dụng tập dữ liệu trong ChartFactory của mình .
JDBCPieDataset ds = new JDBCPieDataset(conn, "SELECT ...");
Ví dụ đầy đủ được hiển thị tại đây .