首页 > 解决方案 > 创建一个不是表spring jpa的实体

问题描述

我正在尝试使用 JPA 学习 spring boot。如何创建一个仅包含表中选定列的实体?我可以使用 jdbcTemplate 来做到这一点,但也可以使用 JPA 吗?

我尝试使用 SELECT NEW 但它在 em.createQuery 执行时给了我一个空指针异常错误。这是否意味着我没有结果?你能帮我找出我的错误吗?

这是我的代码:

EntityManager em;

    String queryStr =
            "SELECT NEW com.lms.app.user.User(c.id.username, c.password, c.emailadd) FROM TBUSER AS c";
    TypedQuery<User> query =
            em.createQuery(queryStr, User.class);
    List<User> results = query.getResultList();

用户类

public class User {

private String name;
private String password;
private String email;

public String getName() {
    return name;
}

public void setName(String name) {
    this.name = name;
}

public String getPassword() {
    return password;
}

public void setPassword(String password) {
    this.password = password;
}

public String getEmail() {
    return email;
}

public void setEmail(String email) {
    this.email = email;
}
}

TBUSER 列如下所示:

username varchar (primary key)
password
emailadd
then more columns here..

标签: spring-data-jpa

解决方案


推荐阅读