我正在尝试获取特定fileId的最大版本的FileRepository
行。但抛出以下异常:
java.lang.ClassCastException:java.lang.Integer无法强制转换为com.xxx.xxx.xxx.FileRepository
fileRepo = (FileRepository)session.createCriteria(FileRepository.class,"fileRepository")
.createAlias("fileRepository.file", "file")
.add(Restrictions.eq("file.fileId", file.getFileId()))
.setProjection(Projections.max("version")).uniqueResult();
答案 0 :(得分:2)
.setProjection(Projections.max("version")).uniqueResult();
投影意味着接收特定列值而不是行。
如果你看到这个,只返回ciriteria版本号Int
。
因此错误。
删除此投影或接收int。