繁体   English   中英

保存到数据库中后,Java Web Service返回null

[英]Java Web Service return null after save in database

我有以下问题。 这是我的网络服务:

我得到id和名字oficina:

@GET
    @Path("oficinas/{idEmpresa}")
    @Produces({"application/json"})
    public List<Oficinas> listaOficinas(@PathParam("idEmpresa") String idEmpresa) {
        int numReg;
        Query query = em.createNativeQuery("SELECT ID_OFICINA, NOMBRE_OFICINA FROM OFICINAS WHERE ID_OFICINA =\""+idEmpresa+"\"", Oficinas.class);
        numReg = query.getResultList().size();
        if(numReg > 2) {
            numReg -= 2;
        } else {
            numReg = 0;
        }
        query.setFirstResult(numReg);
        return (List<Oficinas>) query.getResultList();
    }

这将根据办公室获得员工的全名:

@GET
    @Path("personalLaborando/{idOficina}")
    @Produces({"application/json"})
    public List<Personal> personalLaborando(@PathParam("idOficina") String idOficina) {
        int numReg;
        Query query = em.createNativeQuery("SELECT ID_PERSONAL, NOMBRE, APELLIDO_PATERNO, APELLIDO_MATERNO "
                + "FROM PERSONAL WHERE ID_OFICINA = \""+idOficina+"\"", Personal.class);
        numReg = query.getResultList().size();
        if(numReg > 100 ) {
            numReg -= 100;
        }else {
            numReg = 0;
        }
        query.setFirstResult(numReg);
        return (List<Personal>) query.getResultList();
    }

此代码用于获取类别:

@GET
    @Path("categorias")
    @Produces({"application/json"})
    public List<Categoria> listaCategoria() {
        int numReg;
        Query query = em.createNativeQuery("SELECT *FROM CATEGORIA", Categoria.class);
        numReg = query.getResultList().size();
        if(numReg > 10) {
            numReg -= 10;
        } else {
            numReg = 0;
        }
        query.setFirstResult(numReg);
        return (List<Categoria>) query.getResultList();
    }

保存之前我的Json类别:

[{"descripcion":"MOBILIARIO","idCategoria":1},{"descripcion":"PAPELERIA","idCategoria":2},{"descripcion":"ELECTRONICA","idCategoria":3},{"descripcion":"LIMPIEZA","idCategoria":4},{"descripcion":"OTRO","idCategoria":5}]

办公室:

[{"idOficina":22,"nombreOficina":"ORFIS SUR"}]

个人:

[{"apellidoMaterno":"karla","apellidoPaterno":"karla","idPersonal":2,"nombre":"Karla"},{"apellidoMaterno":"Lopez","apellidoPaterno":"Lopez","idPersonal":3,"nombre":"Juan"},{"apellidoMaterno":"Jimenez","apellidoPaterno":"Lopez","idPersonal":8,"nombre":"Rico"}]

保存后:

分类:

[{"descripcion":"MOBILIARIO","idCategoria":1},{"descripcion":"PAPELERIA","idCategoria":2},{"descripcion":"ELECTRONICA","idCategoria":3},{"idCategoria":4},{"descripcion":"OTRO","idCategoria":5}]

办公室:

[{"idOficina":22}]

个人:

[{"apellidoMaterno":"karla","apellidoPaterno":"karla","idPersonal":2,"nombre":"Karla"},{"apellidoMaterno":"Lopez","apellidoPaterno":"Lopez","idPersonal":3,"nombre":"Juan"},{"idPersonal":8}]

好吧,当客户端将数据加载到微调器中并选择他想要的东西时,这很好用,但是在发送数据并继续希望选择办公室和员工之后,我得到了空值。

我的错是什么? 我该如何解决?

仅在em.persist()之后添加下一行代码;

em.clean();

准备好了!

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM