我需要使用hibernate从mariadb动态列中选择一个属性。
因此我使用@Formula
COLUMN_GET
注释
@Formula("COLUMN_GET(variable_data, 'mileage' AS INTEGER)")
Integer mileage
但由于某些原因,Hibernate在INTEGER
之前插入了表别名,并且sql查询失败。
解决方法是使用DOUBLE(10,0)
。这样,Hibernate不会将其解释为变量,并且查询正常。
我试图实现一个Hibernate UserType,但我不能用这种机制操纵select属性。
还有其他方法吗?