java - 如何将 java.sql.binary 类型映射到休眠类型?
问题描述
我有一个如下所示的 prepraredStatement,我想重构这段代码并使用 Spring Data JPA。问题是我不知道如何将 java.sql.Types.BINARY 映射到休眠类型。
String query= "SELECT count(*) FROM USERS WHERE ACCOUNT_ID=?";
query.setObject(1, accountID.toString().replaceAll("-", ""), Types.BINARY);
我尝试了字节数组,但是当我查询时它返回空结果集。
@Column(name = "ACCOUNT_ID", nullable = false)
private byte[] accountId;
解决方案
我不确定二进制类型是否适合 ID,可能您正在使用 UUID 并且会从中受益更多?
但是,如果您确定这是您真正想要的,那么您可以使用org.hibernate.annotations.Type
注释,如下所示:
@Column(name = "ACCOUNT_ID", nullable = false)
@Type(type = "org.hibernate.type.BinaryType")
private byte[] accountId;
推荐阅读
- python - Python如何使用具有不同长度的verctors的箱线图创建一个图
- .net-core - 登录时在启动类中注册服务
- android - React-Native (Android) - 任务 ':app:transformClassesWithMultidexlistForRelease' 执行失败
- angular - 使用迷你图标变体从末端位置打开 mat-sidenav
- javascript - 我的 WordPress 网站的特定页面上的页面加载时间缓慢的问题
- angular - 无法格式化角度时间戳
- c++ - OpenGL:mat4x4 与 vec4 相乘得到 tvec
- macos - 在 Mac 上调试 IE11
- c# - Entity Framework Core LINQ 麻烦创建(选择案例存在)查询
- c# - 将笔记本电脑连接到多台显示器时出现显示器编号问题