jsp 取到list 能遍历 却不能取到对象的属性 springboot JPA

今天用了springbootJPA的分页查询,用的是EntityManager + Query的方式来查询的

private List<Policy> getQueryResult(StringBuilder baseJpql, Map<String, Object> paras, Pageable pageable) {
        //一定要注意加上后面的Policy.class,不然不会自动将查询到的结果映射到policy上,导致得到的是一个List<Object[]>,最终导致无法在jsp取到policy的属性
        Query query = em.createQuery("SELECT p "+baseJpql.toString(),Policy.class);
//        Query query = em.createNativeQuery("SELECT id, title, author, url, publishTime, menuCode, urlCode, createTime, createUser, updateTime "+baseJpql.toString(),Policy.class);

        setQueryParameter(query,paras);
        query.setFirstResult((int) pageable.getOffset());
        query.setMaxResults(pageable.getPageSize());
        return query.getResultList();
    }

这里一开始没有在createQuery方法中加入第二个参数,导致查询出来的结果集不能自动映射到Policy实体上

在前端jsp取policy属性的时候就会一直报错。

在jsp上搞了很久,最后发现是这个问题,希望大家能少走弯路。

猜你喜欢

转载自www.cnblogs.com/osxbl-blog/p/9371281.html
今日推荐