java - hibernate 中字符串字段与字符串数组的交集

标签 java sql hibernate

我有一个表,其中包含一个由逗号分隔的字符串字段,并且我有一个字符串数组。我想在字符串数组中查看这个逗号分隔的字符串字段。我无法标记字符串字段,以便我可以通过“IN”子句查看字符串数组。示例如下:

String feild = "inbox, outbox, draft, sent";
String[] strArray = ["inbox, "outbox", "sent", "web", "software"];

如何获取feild字符串与字符串数组的交集?

最佳答案

您可以使用:

Criterion c = null;
for(String s : strArray){
    if(c!=null){
        c = Restrictions.like("field","%"+s+"%");
    else {
        c = Restrictions.or(c,Restrictions.like("field","%"+s+"%"));
    }
}

这是一种低效的方式,但却是一种解决方案。

关于java - hibernate 中字符串字段与字符串数组的交集,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24372073/

相关文章:

java - JSONParser getResourceAsStream

java - 如何在 Java 中创建日历对象

java - 如何将 IN 参数指定为 TABLE 类型的 Oracle 数据类型?

php - mysql - 如何将主查询值传递到子查询中的连接

c# - 如何获得数据表中的特定结果?

java - CASE WHEN 在 Hibernate @OrderBy 注解中

java - 如何在 collect 的 java 流中将 Map<String, Person> 转换为 Map<String, Integer>?

sql - 过滤具有一对多关系的两个表之间的数据

java - hsqldb 中的 mysql 方言

java - 不关闭 hibernate session 时的奇怪行为