问题标签 [detachedcriteria]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
2086 浏览

java - 复合 PK 字段的分离标准?

我有一个包含 3 列作为主键的表。代码和映射如下:

复合键的类

表类

休眠xml映射

所有这一切都很好。现在,我需要编写 DetachedCriteria 查询来获取特定的 ResultCurrentState 对象/记录。我尝试了这样的方法,但它不起作用(我不知道是否将此复合 ID 视为嵌套属性):

如果有人可以帮助我编写适当的标准,我将不胜感激。
谢谢。

0 投票
2 回答
5438 浏览

hibernate - 使用子条件创建动态休眠条件查询

我有一个 Java 类,其中有一些用@SearchCriteria(criteria = "class1.class2.field"). criteria注释内的参数意味着对于类,该字段应设置为休眠条件,这意味着,如果字段标记例如:

我想动态创建休眠条件,看起来像

问题是我不能设置另一个已经添加的标准,这意味着我应该检查注释criteria选项。

我想删除这个“开关”。可以通过(我现在不知道)获得已经添加的条件,例如通过“名称”并为其添加新的子条件。

0 投票
2 回答
4030 浏览

hibernate - 如何为集合集编写 Hibernate 查询

我有以下实体

和语言实体是

我的语言表如下所示

在此处输入图像描述

我想选择所有姓名以 A 开头并且知道 java 和 C 的员工,为此我正在尝试关注

语言集在哪里

我可以看到我的尝试是完全错误的......我是新来的休眠有人可以帮我解决它..

0 投票
1 回答
490 浏览

nhibernate - 使用 NHibernate 过滤延迟加载集合的内容

我有一个包含以下内容的域模型:

我有一个服务层,通过它我检索这些实体,并且传递给该服务层的参数是请求用户是谁。

我想要做的是能够DetachedCriteria在服务层中构建一个限制Comment为给定客户返回的项目,这样用户就不会看到任何不属于他们并标记为私有的评论。

我试着做这样的事情:

但这并没有流向延迟加载的评论。

我不希望使用过滤器,因为这将需要与会话交互(当前未暴露给服务层)或强制我的存储库了解用户上下文(这似乎应该是太多的逻辑一个愚蠢的层)。由于其他原因,过滤器也是一个肮脏的解决方案——确定什么是可见的,什么不是的逻辑比私有标志更详细。

我不想在服务层中使用 LINQ 来过滤集合,因为这样做会以非常糟糕的方式破坏整个延迟加载的好处。评论不相关的客户列表将导致数据库调用风暴,这将非常缓慢。我宁愿不在我的表示层(一个 MVC 应用程序)中使用 LINQ,因为它似乎是错误的地方。

任何想法是否可以使用DetachedCriteria?还有其他方法可以做到这一点吗?

0 投票
1 回答
3658 浏览

parent-child - 基于子表的一对多分离条件父表获取

我在使用休眠的一对多映射中遇到了一个问题。

我有 2 个班级,PersonAddress。人员由地址映射(一对多)我想获取地址 =“xxxx”的所有人员;。如何使用DetachedCriteria准备此查询。下面我从我的 dao 类中添加了一段代码。请帮我完成它。

人.java

地址.java

我的 DAO

select * from person where Address.address = "xxxx"; 如何使用DetachedCriteria实现这一点 ?

0 投票
0 回答
2268 浏览

hibernate - 使用子查询条件查询 Hibernate Parent/Child

编辑:相关:https ://forum.hibernate.org/viewtopic.php?f=1&t=946236&start=0但仍然没有解决方案。

我有父母/孩子的关系。父级映射一组字符串标签。简化的 DDL:

子表有一个指向父表的外键和一个名为 name 的 varchar。

父类将子类映射为 Set

映射

这个sqlRestriction查询正是我想做的:

这会找到所有具有与“tag1”、“tag2”、“tag3”中的任何一个匹配的标签的父对象。

我需要将其转换为基于 Criteria 的查询 b/c 我们对所有其他属性使用 Criteria,并且我需要找到一种方法为此做同样的事情:基本上将其转换为我可以用作的 Criterion 或 DetachedCriteria部分较大的表情

我遇到的问题是,大多数类似的示例都有一个父子实体类,其中子类是一个真正的实体。因此,您可以创建标准,例如:

session.createCriteria(Parent.class, "p").createCriteria("tags").etc...

如果我尝试这样做,Hibernate 会抛出一个映射异常并抱怨“标签”不是关联。但是,映射是正确的。如果我查询父类型,它会在 Set 中很好地返回子标签——我只是不知道如何使用 Criteria、Subqueries、Restrictions、DetachedCriteria 等的某种组合来查询它。

我很想听听任何建议。

0 投票
1 回答
2570 浏览

c# - NHibernate SetFetchMode 不适用于嵌套条件

假设我运行以下代码:

我的“收入”属性已正确填充。

现在,当我添加收入标准时,不再急切地获取该房产。

为什么 NHibernate 会这样做?如何更改我的查询/条件以便急切地获取该属性?

谢谢。

0 投票
0 回答
166 浏览

linq - Castle ActiveRecord .net C#如何实现IndexOf

我想IndexOf通过使用排序和自定义过滤条件来实现 ActiveRecord 映射类,如下所示:

做这个的最好方式是什么 ?我可以使用这样的 linq:

这会提供正确的 SQL 还是会获取所有项目?

0 投票
1 回答
21609 浏览

hibernate - 不为空的条件子查询

我想将以下子查询转换为使用休眠子查询:

  • 员工:

    /li>
  • 部门:

    /li>

谁能给我一个这个转换的例子,因为我读了一些例子,但我仍然不知道如何做到这一点。

0 投票
1 回答
1281 浏览

java - 使用带有接口的 DetachedCriteria 进行休眠

使用 Hibernate 3.6.8.Final 和 Spring 3.0.5.RELEASE ,我正在尝试为具有多个实现的类添加一些 Common DAO 功能,这些实现被重写以实现特定的类,但它不适用于 DetachedCriteria。

例子:

在基类中:

然后每个继承的项目将定义休眠注释。

例如

这意味着我可以使用:

Spring/Hibernate 知道它从特定项目中的具体继承中提取 ICat 的注释。

但是,如果我尝试这样做:

然后我在运行时为 ICat 获得一个未知实体。

现在这是有道理的,因为在第一个实例中是从 Session 中创建它,因此它具有所需的所有配置,而 DetachedCriteria 是一个静态方法,但是在尝试执行

到那时它已经拿起了 Session 并且应该知道 ICat 实际上是一个 SquawkyMeowingCat ,它具有所有的注释。

所以我的问题分为两部分:

1)这是已知的行为,并且会永远这样吗?

2) 谁能想到一个简单的方法而不使用接口和具体的 ClassHolder 来交还它需要创建的类的实例?