Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/hibernate/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Hibernate 复制左外连接_Hibernate_Orm_Coldfusion 9 - Fatal编程技术网

Hibernate 复制左外连接

Hibernate 复制左外连接,hibernate,orm,coldfusion-9,Hibernate,Orm,Coldfusion 9,我正在使用CF9中的ORM特性,只是有点纠结于如何复制左外部联接查询 我有一份任务清单 component output="false" persistent="true"{ property name="iTaskListID" fieldtype="id" generator="native"; property name="sTitle" ormtype="string" length="50"; property name="task" fieldtype="one-to-m

我正在使用CF9中的ORM特性,只是有点纠结于如何复制左外部联接查询

我有一份任务清单

component output="false" persistent="true"{
  property name="iTaskListID" fieldtype="id" generator="native";
  property name="sTitle" ormtype="string" length="50";
  property name="task" fieldtype="one-to-many" cfc="Task" fkcolumn="iTaskListID";
}
和任务CFC

component output="false" persistent="true"{
  property name="iTaskID" fieldType="id" generator="native";
  property name="sTitle" notnull="true" type="string";
  property name="dtCreated" ormtype="date";
  property name="iListingID" ormtype="integer";
  property name="User" fieldtype="many-to-one" cfc="Users" fkcolumn="iUserID";
  property name="iTaskListID" ormtype="integer";
}
然后执行entityLoad

 <cfset results = entityLoad("TaskList",url.iTaskListID,true)>
 <cfset resultsQuery = entityToQuery(results)>

但是,当我尝试使用resultsQuery时,我无法访问任务cfc属性。比如说

cfoutput>
 <cfloop query="resultsQuery">
   #resultsQuery.iTaskID#
  </cfloop>
</cfoutput>
cfoutput>
#resultsQuery.iTaskID#
如果在RESULTSQUERY中未定义,将产生错误元素

有人有什么建议吗


非常感谢

entityToQuery没有集成关系属性,只是加载了Hibernate实体中的本机属性。执行
,您将在查询中只看到iTaskListID和缝合字段(根据您的示例)

没有理由将entityLoad输出(一个对象,因为您正在传入ID且unique=true)转换为查询。直接在results变量中访问对象,并通过results.getTask()的输出循环访问关系,该输出将输出任务对象数组(TaskList与任务有一对多关系)


#对象getITaskID()#
我并不建议您这样做,但如果您真的想通过查询方法访问它,请调用以下命令:

<cfset taskQuery = entityToQuery(results.getTask())>
<cfoutput query="taskQuery">
    #taskQuery.iTaskID#
</cfoutput>

#taskQuery.iTaskID#

entityToQuery不集成关系属性,只集成加载的Hibernate实体中的本机属性。执行
,您将在查询中只看到iTaskListID和缝合字段(根据您的示例)

没有理由将entityLoad输出(一个对象,因为您正在传入ID且unique=true)转换为查询。直接在results变量中访问对象,并通过results.getTask()的输出循环访问关系,该输出将输出任务对象数组(TaskList与任务有一对多关系)


#对象getITaskID()#
我并不建议您这样做,但如果您真的想通过查询方法访问它,请调用以下命令:

<cfset taskQuery = entityToQuery(results.getTask())>
<cfoutput query="taskQuery">
    #taskQuery.iTaskID#
</cfoutput>

#taskQuery.iTaskID#