public JSONArray getTreeNodes(String departmentSn) {
Department department = new Department();
JSONArray jsonArray = new JSONArray();
if (!departmentSn.equals("-1")) {
department.setParentDepartmentSn(departmentSn);
} else {
//这里将department的一个布尔属性设置为true
department.setHasActivated(true);
}
//在这里进行筛选
List<Department> departments = departmentMapper.select(department);
System.out.print(departments);
for (Department DEP : departments) {
Department d = new Department();
Department sonDepartment = departmentMapper.selectByPrimaryKey(DEP.getDepartmentSn());
JSONObject jsonObject = new JSONObject();
jsonObject.put("label", sonDepartment.getDepartmentName());
jsonObject.put("data", sonDepartment.getDepartmentSn());
d.setParentDepartmentSn(DEP.getDepartmentSn());
if (departmentMapper.selectCount(department) == 0) {
jsonObject.put("leaf", true);
} else {
jsonObject.put("leaf", false);
}
jsonArray.add(jsonObject);
}
return jsonArray;
}
}
Dalam kod di atas, apabila saya lulus dalam jabatanSn yang bukan -1, ia tidak memasuki cawangan lain Namun, selepas penapisan berikut, set keputusan kosong, seperti yang ditunjukkan di bawah
Saiz di sini ialah 0.
Dan apabila saya menukar atribut boolean dalam kelas entiti kepada atribut rentetan (seperti yang ditunjukkan dalam gambar)
Sebelum pengubahsuaian
Selepas pengubahsuaian
Hasil yang ditapis adalah normal.
Saiz di sini ialah 8.
Mengapa ini?
Selain itu, saya juga cuba menetapkan atribut boolean kepada false secara manual, dan hasilnya juga kosong seperti yang ditunjukkan di bawah.
Jangan gunakan jenis asas untuk kelas entiti Anda boleh mencuba Boolean dahulu Jika anda menghadapi sebarang masalah, siarkan SQL dan lihat.