java - hibernate 和 spring mvc 中的 ClassCastException

标签 java hibernate spring-mvc

我的用户对象如下:

公共(public)类 User 实现可序列化{

private static final long serialVersionUID = 1L;

@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
private Long userId;

@Column(name="emailId")
private String emailId;

@Column(name="userName")
private String userName;

@Column(name="address")
private String address;

@Column(name="mobNo")
private BigDecimal mobNo;

@OneToOne(cascade = CascadeType.ALL)
@JoinColumn(name = "deptId")
private Department department;

@OneToOne(cascade = CascadeType.ALL)
@JoinColumn(name = "desgId")
private Designation designation;

@Column(name="grpId")
private int grpId ;

@Column(name="userLevel")
private int userLevel ;

@Column(name="upw1")
private String upw1 ;

@Column(name="upw2")
private String upw2 ;

@Column(name="upw3")
private String upw3 ;

@Column(name="createdBy")
private String createdBy ;

@Column(name="creationDate")
private Timestamp creationDate;

@Column(name="loginStatus")
private String loginStatus;

@Column(name="hintId")
private int hintId ;

@Column(name="hintAns")
private String hintAns ;

@Column(name="otp")
private String otp ;

而metghod是

public List<User> getUsers(){
    Query query=sessionFactory.getCurrentSession()
            .createQuery("select u.userName, u.mobNo, u.department.deptnm, u.designation.desgnm, "
                    + "u.loginStatus from User u");
    List<User> list=(List<User>)query.list();
    return list;

}

我得到了 classCastException

java.lang.ClassCastException: java.base/[Ljava.lang.Object; cannot be cast to com.common.models.User

有人可以告诉我我做错了什么吗? 提前致谢

最佳答案

您对一组不同字段的查询,因此结果列表中的每一行都将是一个 Java 对象数组 (Object[])。

您想要查询单个对象:从用户 u 中选择 u

(您将猜测所有要选择的字段并加入到 Hibernate 中)。

关于java - hibernate 和 spring mvc 中的 ClassCastException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51261569/

相关文章:

java - Spring - 删除另一个表中引用的实体时无法捕获 ConstraintViolationException

spring-mvc - 使用 spring security 以编程方式登录用户

java - 由于已经存在根应用程序上下文而无法初始化上下文,在 tomcat 中部署 war 失败

java - Apache Camel : creating simple POJO pipelines (put a POJO in and get a POJO out)

java - 通过一个简单的 NDCG Java 示例获得 Always 1.0

java - Button2 正在做 Button1 应该做的事情

java - 如何在使用 JPA 持久化的同时将 PrimaryKey 的值(使用序列生成)分配给另一个变量?

java - 同一个请求的不同执行时间

spring-integration-kafka 配置消费者从指定分区接收消息

java - 在 JUnit 中获取 java.lang.ClassNotFoundException : javax. servlet.ServletContext