Spring Data Jpa 查询返回自定义对象

转载请注明出处:http://www.wangyongkui.com/java-jpa-query。

今天使用Jpa遇到一个问题,发现查询多个字段时返回对象不能自动转换成自定义对象。代码如下:

//User 实体对象
@Entity
@Table(name="t_user")
public class User {
    private Integer id;
    private String name;
    public Integer getId() {
        return id;
    }
    public void setId(Integer id) {
        this.id = id;
    }
    public Strng getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
}
package com.project.user.dto
//查询返回对象
public class UserDto{
    private Integer count;
    private String name;
    public UserDto(Integer count, String name) {
        this.count = count;
        this.name = name;
    }
    public Integer getCount() {
        return count;
    }
    public void setCount(Integer count) {
        this.count = count;
    }
    public Strng getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
}

好了,这回查询直接返回的就是UserDto对象了。

时间: 2024-08-24 14:56:36

Spring Data Jpa 查询返回自定义对象的相关文章

Spring Data JPA 查询结果返回至自定义实体

本人在实际工作中使用Spring Data Jpa框架时,一般查询结果只返回对应的Entity实体.但有时根据实际业务,需要进行一些较复杂的查询,比较棘手.虽然在框架上我们可以使用@Query注解执行我们自定义的sql语句,但是其返回值为List<Object[]> 类型,即多个Object数组的List集合,然后通过解析获取需要的数据,比较麻烦. 于是,开始考虑能否将查询结果返回至自定义的实体类,网上寻找解决方案并自己不断实践,遇到一些问题,跟大家分享下. 首先,介绍一种可行的方案: 1.自

jpa 联表查询 返回自定义对象 hql语法 原生sql 语法 1.11.9版本

-----业务场景中经常涉及到联查,jpa的hql语法提供了内连接的查询方式(不支持复杂hql,比如left join ,right join).  上代码了 1.我们要联查房屋和房屋用户中间表,通过房屋id关联 homeInfo是房屋表,homeUser是房屋用户中间表. homeInfo 1 package management.entity.carandhome; 2 3 import java.io.Serializable; 4 import java.math.BigDecimal;

spring boot系列(五)spring boot 配置spring data jpa (查询方法)

接着上面spring boot系列(四)spring boot 配置spring data jpa 保存修改方法继续做查询的测试: 1 创建UserInfo实体类,代码和https://www.cnblogs.com/kxm87/p/9273555.html中的一样. 2 创建数据库操作类相当于dao层,主要创建一个接口UserRepository,继承JpaRepository接口即可.本代码中主要都是自定义方法. 使用findXX 或者countXX(这两个不用编写sql,jpa会自动生成)

spring data jpa 查询(转)

@Component public interface TaskDao extends PagingAndSortingRepository<Task, Long>, JpaSpecificationExecutor<Task> { Page<Task> findByUserId(Long id, Pageable pageRequest); @Modifying @Query("delete from Task task where task.user.id

使用Spring Data JPA查询时,报result returns more than one elements异常

public static <T> T get(String hql, Class<T> t) { EntityManager em = getFactory().createEntityManager(); try { return em.createQuery(hql, t).getSingleResult(); } catch (NoResultException e) { e.printStackTrace(); return null; } finally { em.cl

Spring data jpa JavassistLazyInitializer 不仅是Json序列化问题.以及解决办法

最近偷点时间更新一下框架,使用SpringBoot2.0 整套一起更新一下,发现些小问题 Spring data jpa getOne 返回的是代理对象,延迟加载的,ResponseBody成Json的时候会有序列化问题,网上的都说加上这个就好了,这样是能返回. @JsonIgnoreProperties(value={"hibernateLazyInitializer","handler","fieldHandler"}) 但是经过自定义的,但

Spring Data JPA 1.10.1 详解二之快速Demo

一.maven配置文件加入依赖 Spring Data JPA 依赖,最新稳定的版本为1.10.1.RELEASE,这里需要说明下的是,其依然依赖hibernate JPA相关JAR,hibernate-core之类的是不需要的.hibernate是JPA规范的一种实现,所以需要加入其依赖.ehcache是hibernate二级缓存的配置,不是必须的. <dependency>         <groupId>org.springframework.data</groupI

使用 Spring Data JPA 简化 JPA 开发

从一个简单的 JPA 示例开始 本文主要讲述 Spring Data JPA,但是为了不至于给 JPA 和 Spring 的初学者造成较大的学习曲线,我们首先从 JPA 开始,简单介绍一个 JPA 示例:接着重构该示例,并引入 Spring 框架,这两部分不会涉及过多的篇幅,如果希望能够深入学习 Spring 和 JPA,可以根据本文最后提供的参考资料进一步学习. 自 JPA 伴随 Java EE 5 发布以来,受到了各大厂商及开源社区的追捧,各种商用的和开源的 JPA 框架如雨后春笋般出现,为

[z]使用 Spring Data JPA 简化 JPA 开发

文章来自http://www.ibm.com/developerworks/cn/opensource/os-cn-spring-jpa/,内容非常清晰. 从一个简单的 JPA 示例开始 本文主要讲述 Spring Data JPA,但是为了不至于给 JPA 和 Spring 的初学者造成较大的学习曲线,我们首先从 JPA 开始,简单介绍一个 JPA 示例:接着重构该示例,并引入 Spring 框架,这两部分不会涉及过多的篇幅,如果希望能够深入学习 Spring 和 JPA,可以根据本文最后提供