mybatis – Warum kann das Java-Backend Objekte nicht mit booleschen Attributen herausfiltern, kann aber in den String-Typ geändert werden?
为情所困
为情所困 2017-06-12 09:21:52
0
1
1002
 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;
    }
}

Wenn ich im obigen Code einen DepartmentSn übergebe, der nicht -1 ist, gelangt dieser nicht in den else-Zweig. Nach der folgenden Filterung ist die Ergebnismenge jedoch leer, wie unten gezeigt

Die Größe beträgt hier 0,
Und als ich das boolesche Attribut in der Entitätsklasse in ein String-Attribut geändert habe (wie im Bild gezeigt)

Vor der Änderung

Nach der Änderung

Die gefilterten Ergebnisse sind normal.


Die Größe beträgt hier 8.
Warum ist das so?
Außerdem habe ich versucht, das boolesche Attribut manuell auf false zuzuweisen, und das Ergebnis war ebenfalls leer, wie unten gezeigt.

为情所困
为情所困

Antworte allen(1)
typecho

实体类不要用基本类型,可以先试试 Boolean,如果有问题,把SQL贴出来看看。

Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage