fat*_*ael 1 java sql hibernate jpa java-8
我有一个 ID 列表
1, 2, 3, 4
Run Code Online (Sandbox Code Playgroud)
我想写一个删除查询
public void deleteComputersUsingNative(List<Integer> id) {
String commaSeperated = ?//Convert ID to comma seperated string in to put in where clause
em.createNativeQuery("DELETE FROM PD_OWNER.CIM_SNOW_COMP_OPTDRIV_TAB WHERE ID IN (" +commaSeperated +")").executeUpdate();
}
Run Code Online (Sandbox Code Playgroud)
toString()在一种解决方案中执行和删除括号。
有没有更好的方法可以在纯 java 或 jpa/hibernate 中处理这个问题?
您可以使用String.join:
String.join(',', id)
Run Code Online (Sandbox Code Playgroud)
尽管您可以将带有setParameterList方法的列表传递unwrap给休眠的Query,但这将是处理此问题的正确方法。有关更多详细信息,请参阅javadoc。
| 归档时间: |
|
| 查看次数: |
660 次 |
| 最近记录: |