问题描述
im试图使用java和hibernate从MSSql表中选择动态生成的列数。
问题:
Hibernate返回不同的返回类型,具体取决于我对MSSql TinyInt值使用哪种查询方法。
信息:
HibernateVersion:5.4.12.Final
HibernateDialect:dialect: org.hibernate.dialect.SQLServerDialect
简化实体:
CREATE TABLE SampleEntity
(
[ID] [int],-- PK etc...,[SomeTinyInt] [tinyint]
)
Hibernate生成的实体类:
@Entity
public class SampleEntity implements Serializable {
private static final long serialVersionUID = 1L;
@EmbeddedId
private int id;
@Column(name = "SomeTinyInt")
private Short someTinyInt;
//set get...
}
现在通过JPQL
选择实体很好。
SELECT e FROM SampleEntity
通过动态生成的查询字符串选择实体,并以Native Query
执行
例如
SELECT SomeTinyInt FROM SampleEntity
返回具有预期列的数组,但是SomeTinyInt
返回的是byte
而不是short
。
问题: 有没有办法统一返回类型?
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)