📄 blogjava - water的备忘录 - hibernate的查询方式.mht
字号:
#000000">, </SPAN><SPAN=20
style=3D"COLOR: #000000">"</SPAN><SPAN style=3D"COLOR: =
#000000">Fritz%</SPAN><SPAN=20
style=3D"COLOR: #000000">"</SPAN><SPAN style=3D"COLOR: =
#000000">) )<BR><IMG=20
src=3D"http://www.blogjava.net/Images/OutliningIndicators/None.gif"=20
align=3Dtop> .add( Restrictions.or(<BR><IMG=20
src=3D"http://www.blogjava.net/Images/OutliningIndicators/None.gif"=20
align=3Dtop> Restrictions.=
eq( </SPAN><SPAN=20
style=3D"COLOR: #000000">"</SPAN><SPAN style=3D"COLOR: =
#000000">age</SPAN><SPAN=20
style=3D"COLOR: #000000">"</SPAN><SPAN style=3D"COLOR: =
#000000">, </SPAN><SPAN=20
style=3D"COLOR: #0000ff">new</SPAN><SPAN=20
style=3D"COLOR: #000000"> Integer(</SPAN><SPAN=20
style=3D"COLOR: #000000">0</SPAN><SPAN style=3D"COLOR: =
#000000">) ),<BR><IMG=20
src=3D"http://www.blogjava.net/Images/OutliningIndicators/None.gif"=20
align=3Dtop> Restrictions.=
isNull(</SPAN><SPAN=20
style=3D"COLOR: #000000">"</SPAN><SPAN style=3D"COLOR: =
#000000">age</SPAN><SPAN=20
style=3D"COLOR: #000000">"</SPAN><SPAN style=3D"COLOR: =
#000000">)<BR><IMG=20
src=3D"http://www.blogjava.net/Images/OutliningIndicators/None.gif"=20
align=3Dtop> ) )<BR><IMG=20
src=3D"http://www.blogjava.net/Images/OutliningIndicators/None.gif"=20
align=3Dtop> .addOrder( Order.asc(</SPAN><SPA=
N=20
style=3D"COLOR: #000000">"</SPAN><SPAN style=3D"COLOR: =
#000000">name</SPAN><SPAN=20
style=3D"COLOR: #000000">"</SPAN><SPAN style=3D"COLOR: =
#000000">) )<BR><IMG=20
src=3D"http://www.blogjava.net/Images/OutliningIndicators/None.gif"=20
align=3Dtop> .addOrder( Order.desc(</SPAN><SP=
AN=20
style=3D"COLOR: #000000">"</SPAN><SPAN style=3D"COLOR: =
#000000">age</SPAN><SPAN=20
style=3D"COLOR: #000000">"</SPAN><SPAN style=3D"COLOR: =
#000000">) )<BR><IMG=20
src=3D"http://www.blogjava.net/Images/OutliningIndicators/None.gif"=20
align=3Dtop> .list();</SPAN></DIV></DIV>
<P><BR>4. Native SQL</P>
<DIV=20
style=3D"BORDER-RIGHT: windowtext 0.5pt solid; PADDING-RIGHT: 5.4pt; =
BORDER-TOP: windowtext 0.5pt solid; PADDING-LEFT: 5.4pt; BACKGROUND: =
#e6e6e6; PADDING-BOTTOM: 4px; BORDER-LEFT: windowtext 0.5pt solid; =
WIDTH: 98%; WORD-BREAK: break-all; PADDING-TOP: 4px; BORDER-BOTTOM: =
windowtext 0.5pt solid">
<DIV><IMG =
src=3D"http://www.blogjava.net/Images/OutliningIndicators/None.gif"=20
align=3Dtop><SPAN style=3D"COLOR: =
#000000">String treeSql </SPAN><SPAN=20
style=3D"COLOR: #000000">=3D</SPAN><SPAN style=3D"COLOR: =
#000000"> </SPAN><SPAN=20
style=3D"COLOR: #000000">""</SPAN><SPAN style=3D"COLOR: =
#000000"> </SPAN><SPAN=20
style=3D"COLOR: #000000">+</SPAN><SPAN style=3D"COLOR: #000000"><BR><IMG =
src=3D"http://www.blogjava.net/Images/OutliningIndicators/None.gif"=20
align=3Dtop> &=
nbsp; </SPAN><SPAN=20
style=3D"COLOR: #000000">"</SPAN><SPAN=20
style=3D"COLOR: =
#000000">select {t.*}, level from tree t </=
SPAN><SPAN=20
style=3D"COLOR: #000000">"</SPAN><SPAN style=3D"COLOR: =
#000000"> </SPAN><SPAN=20
style=3D"COLOR: #000000">+</SPAN><SPAN style=3D"COLOR: #000000"><BR><IMG =
src=3D"http://www.blogjava.net/Images/OutliningIndicators/None.gif"=20
align=3Dtop> &=
nbsp; </SPAN><SPAN=20
style=3D"COLOR: #000000">"</SPAN><SPAN=20
style=3D"COLOR: =
#000000"> start with t.parent_id =3D 0 </SP=
AN><SPAN=20
style=3D"COLOR: #000000">"</SPAN><SPAN style=3D"COLOR: =
#000000"> </SPAN><SPAN=20
style=3D"COLOR: #000000">+</SPAN><SPAN style=3D"COLOR: #000000"><BR><IMG =
src=3D"http://www.blogjava.net/Images/OutliningIndicators/None.gif"=20
align=3Dtop> &=
nbsp; </SPAN><SPAN=20
style=3D"COLOR: #000000">"</SPAN><SPAN=20
style=3D"COLOR: =
#000000"> connect by prior t.id =3D t.paren=
t_id</SPAN><SPAN=20
style=3D"COLOR: #000000">"</SPAN><SPAN style=3D"COLOR: =
#000000">;<BR><IMG=20
src=3D"http://www.blogjava.net/Images/OutliningIndicators/None.gif"=20
align=3Dtop><BR><IMG=20
src=3D"http://www.blogjava.net/Images/OutliningIndicators/None.gif"=20
align=3Dtop>List result </SPAN><SPAN=20
style=3D"COLOR: #000000">=3D</SPAN><SPAN=20
style=3D"COLOR: #000000"> session.createSQLQuery(treeSql)<BR><IMG=20
src=3D"http://www.blogjava.net/Images/OutliningIndicators/None.gif"=20
align=3Dtop> .addEntity(</SPAN><SPAN=20
style=3D"COLOR: #000000">"</SPAN><SPAN style=3D"COLOR: =
#000000">t</SPAN><SPAN=20
style=3D"COLOR: #000000">"</SPAN><SPAN=20
style=3D"COLOR: #000000">, Tree.</SPAN><SPAN=20
style=3D"COLOR: #0000ff">class</SPAN><SPAN style=3D"COLOR: =
#000000">)<BR><IMG=20
src=3D"http://www.blogjava.net/Images/OutliningIndicators/None.gif"=20
align=3Dtop> .addScalar(</SPAN><SPAN=20
style=3D"COLOR: #000000">"</SPAN><SPAN style=3D"COLOR: =
#000000">level</SPAN><SPAN=20
style=3D"COLOR: #000000">"</SPAN><SPAN=20
style=3D"COLOR: #000000">, Hibernate.INTEGER)<BR><IMG=20
src=3D"http://www.blogjava.net/Images/OutliningIndicators/None.gif"=20
align=3Dtop> .list();</SPAN></DIV></DIV>
<P>5. Named SQL queries(=E4=B8=8D=E6=8E=A8=E8=8D=90)<BR><BR>6. =
filter(=E4=B8=8D=E6=8E=A8=E8=8D=90)<BR><BR>7. Detached=20
queries(=E8=BF=98=E6=B2=A1=E6=B5=8B=E8=AF=95)<BR>The DetachedCriteria =
class lets you create a query outside the=20
scope of a session, and then later execute it using some arbitrary=20
Session<BR><BR><STRONG>=E8=AF=A6=E7=BB=86=E7=89=88=E6=9C=AC: =
=E8=AF=B7=E5=8F=82=E8=80=83Hibernate Reference =
Documentation</STRONG></P>
<P class=3Dpostfoot>posted on 2005-08-29 16:34 <A=20
href=3D"http://www.blogjava.net/waterye/">http://www.blogjava.net/waterye=
/</A>=20
=E9=98=85=E8=AF=BB(828) <A=20
href=3D"http://www.blogjava.net/waterye/archive/2005/08/29/11461.aspx#Pos=
t">=E8=AF=84=E8=AE=BA(3)</A>=20
<A=20
href=3D"http://www.blogjava.net/waterye/admin/EditPosts.aspx?postid=3D114=
61">=E7=BC=96=E8=BE=91</A> <A=20
href=3D"http://www.blogjava.net/waterye/AddToFavorite.aspx?id=3D11461">=E6=
=94=B6=E8=97=8F</A> <A=20
title=3D=E5=8A=9F=E8=83=BD=E5=BC=BA=E5=A4=A7=E7=9A=84=E7=BD=91=E7=BB=9C=E6=
=94=B6=E8=97=8F=E5=A4=B9=EF=BC=8C=E4=B8=80=E7=A7=92=E9=92=9F=E6=93=8D=E4=BD=
=9C=E5=B0=B1=E5=8F=AF=E4=BB=A5=E8=BD=BB=E6=9D=BE=E5=AE=9E=E7=8E=B0=E4=BF=9D=
=E5=AD=98=E5=B8=A6=E6=9D=A5=E7=9A=84=E4=BB=B7=E5=80=BC=E3=80=81=E5=88=86=E4=
=BA=AB=E5=B8=A6=E6=9D=A5=E7=9A=84=E5=BF=AB=E4=B9=90=20
href=3D"javascript:d=3Ddocument;t=3Dd.selection?(d.selection.type!=3D'Non=
e'?d.selection.createRange().text:''):(d.getSelection?d.getSelection():''=
);void(keyit=3Dwindow.open('http://www.365key.com/storeit.aspx?t=3D'+esca=
pe(d.title)+'&u=3D'+escape(d.location.href)+'&c=3D'+escape(t),'ke=
yit','scrollbars=3Dno,width=3D475,height=3D575,left=3D75,top=3D20,status=3D=
no,resizable=3Dyes'));keyit.focus();">=E6=94=B6=E8=97=8F=E8=87=B3365Key</=
A>=20
=E6=89=80=E5=B1=9E=E5=88=86=E7=B1=BB: <A =
href=3D"http://www.blogjava.net/waterye/category/2863.html">hibernate</A>=
=20
</P></DIV><IMG height=3D1=20
src=3D"http://www.blogjava.net/waterye/aggbug/11461.html?webview=3D1" =
width=3D1> <!--
<rdf:RDF xmlns:rdf=3D"http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:dc=3D"http://purl.org/dc/elements/1.1/"=0A=
xmlns:trackback=3D"http://madskills.com/public/xml/rss/module/trackback/"=
>
<rdf:Description
rdf:about=3D"http://www.blogjava.net/waterye/archive/2005/08/29/11461.htm=
l"
dc:identifier=3D"http://www.blogjava.net/waterye/archive/2005/08/29/11461=
.html"
dc:title=3D"Hibernate=E7=9A=84=E6=9F=A5=E8=AF=A2=E6=96=B9=E5=BC=8F"
trackback:ping=3D"http://www.blogjava.net/waterye/services/trackbacks/114=
61.aspx" />
</rdf:RDF>
-->
<DIV id=3Dcomments>
<H3>Feedback</H3>
<H4><A title=3D"permalink: re: =
Hibernate=E7=9A=84=E6=9F=A5=E8=AF=A2=E6=96=B9=E5=BC=8F"=20
href=3D"http://www.blogjava.net/waterye/archive/2005/08/29/11461.aspx#115=
82">#</A> <A=20
name=3D11582></A>re: =
Hibernate=E7=9A=84=E6=9F=A5=E8=AF=A2=E6=96=B9=E5=BC=8F <SPAN>2005-08-30 =
19:13 </SPAN><A=20
id=3DComments1_CommentList__ctl0_NameLink target=3D_blank>David</A> =
</H4>
<P>=E6=9C=89=E5=90=A6left join /right join =E4=B9=8B=E7=B1=BB=E7=9A=84? =
<A id=3DComments1_CommentList__ctl0_DeleteLink=20
href=3D"javascript:__doPostBack('Comments1$CommentList$_ctl0$DeleteLink',=
'')"></A> <A=20
id=3DComments1_CommentList__ctl0_EditLink></A> </P>
<H4><A title=3D"permalink: re: =
Hibernate=E7=9A=84=E6=9F=A5=E8=AF=A2=E6=96=B9=E5=BC=8F"=20
href=3D"http://www.blogjava.net/waterye/archive/2005/08/29/11461.aspx#115=
87">#</A> <A=20
name=3D11587></A>re: =
Hibernate=E7=9A=84=E6=9F=A5=E8=AF=A2=E6=96=B9=E5=BC=8F <SPAN>2005-08-30 =
21:16 </SPAN><A=20
id=3DComments1_CommentList__ctl1_NameLink =
href=3D"http://www.blogjava.net/waterye"=20
target=3D_blank>http://www.blogjava.net/waterye</A> </H4>
<P>demo: <BR>select cust <BR>from Product prod, <BR>Store store =
<BR>inner join=20
store.customers cust <BR>where prod.name =3D 'widget' <BR>and =
store.location.name=20
in ( 'Melbourne', 'Sydney' ) <BR>and prod =3D all=20
elements(cust.currentOrder.lineItems) <A=20
id=3DComments1_CommentList__ctl1_DeleteLink=20
href=3D"javascript:__doPostBack('Comments1$CommentList$_ctl1$DeleteLink',=
'')"></A> <A=20
id=3DComments1_CommentList__ctl1_EditLink></A> </P>
<H4><A title=3D"permalink: re: =
Hibernate=E7=9A=84=E6=9F=A5=E8=AF=A2=E6=96=B9=E5=BC=8F"=20
href=3D"http://www.blogjava.net/waterye/archive/2005/08/29/11461.aspx#115=
88">#</A> <A=20
name=3D11588></A>re: =
Hibernate=E7=9A=84=E6=9F=A5=E8=AF=A2=E6=96=B9=E5=BC=8F<A =
name=3DPost></A> <SPAN>2005-08-30 21:19=20
</SPAN><A id=3DComments1_CommentList__ctl2_NameLink=20
href=3D"http://www.blogjava.net/waterye"=20
target=3D_blank>http://www.blogjava.net/waterye</A> </H4>
<P>left join: from Cat as cat left join cat.mate.kittens as kittens =
<BR>full=20
join: from Formula form full join form.parameter param <A=20
id=3DComments1_CommentList__ctl2_DeleteLink=20
href=3D"javascript:__doPostBack('Comments1$CommentList$_ctl2$DeleteLink',=
'')"></A> <A=20
id=3DComments1_CommentList__ctl2_EditLink></A> </P></DIV>
<STYLE>TD {
FONT-SIZE: 12px
}
.commentTextBox {
FONT-SIZE: 12px
}
</STYLE>
<!--Beging Temp Save-->
<STYLE>.userData {
BEHAVIOR: url(#default#userdata)
}
</STYLE>
<DIV class=3DuserData id=3DCommentsPersistDiv></DIV>
<SCRIPT>
function TempSave(ElementID)
{
=09
=
CommentsPersistDiv.setAttribute("CommentContent",document.getElementById(=
ElementID).value);
CommentsPersistDiv.save("CommentXMLStore");
=09
}
function Restore(ElementID)
{
CommentsPersistDiv.load("CommentXMLStore");
=
document.getElementById(ElementID).value=3DCommentsPersistDiv.getAttribut=
e("CommentContent");
}
=09
=09
=09
</SCRIPT>
<!--Ene TempSave-->
<DIV class=3Dcommentform>
<TABLE cellSpacing=3D1 cellPadding=3D1 border=3D0>
<TBODY>
<TR>
<TD width=3D75></TD>
<TD></TD>
<TD></TD></TR>
<TR>
<TD width=3D55>=E6=A0=87=E9=A2=98</TD>
<TD><INPUT id=3DAnonymousPostComment1_tbTitle style=3D"WIDTH: 320px" =
value=3D"re: =
Hibernate=E7=9A=84=E6=9F=A5=E8=AF=A2=E6=96=B9=E5=BC=8F" =
name=3DAnonymousPostComment1:tbTitle></TD>
<TD><SPAN id=3DAnonymousPostComment1_RequiredFieldValidator1=20
style=3D"VISIBILITY: hidden; COLOR: red" initialvalue=3D""=20
evaluationfunction=3D"RequiredFieldValidatorEvaluateIsValid"=20
errormessage=3D"=E8=AF=B7=E8=BE=93=E5=85=A5=E6=A0=87=E9=A2=98"=20
=
controltovalidate=3D"AnonymousPostComment1_tbTitle">=E8=AF=B7=E8=BE=93=E5=
=85=A5=E6=A0=87=E9=A2=98</SPAN></TD></TR>
<TR>
<TD>=E5=A7=93=E5=90=8D</TD>
<TD><INPUT id=3DAnonymousPostComment1_tbName style=3D"WIDTH: 320px"=20
name=3DAnonymousPostComment1:tbName></TD>
<TD><SPAN id=3DAnonymousPostComment1_RequiredFieldValidator2=20
style=3D"VISIBILITY: hidden; COLOR: red" initialvalue=3D""=20
evaluationfunction=3D"RequiredFieldValidatorEvaluateIsValid"=20
=
errormessage=3D"=E8=AF=B7=E8=BE=93=E5=85=A5=E4=BD=A0=E7=9A=84=E5=A7=93=E5=
=90=8D"=20
=
controltovalidate=3D"AnonymousPostComment1_tbName">=E8=AF=B7=E8=BE=93=E5=85=
=A5=E4=BD=A0=E7=9A=84=E5=A7=93=E5=90=8D</SPAN></TD></TR>
<TR>
<TD>=E4=B8=BB=E9=A1=B5</TD>
<TD><INPUT id=3DAnonymousPostComment1_tbUrl style=3D"WIDTH: 320px"=20
name=3DAnonymousPostComment1:tbUrl></TD>
<TD><FONT face=3D=E5=AE=8B=E4=BD=93></FONT></TD></TR>
<TR>
<TD align=3Dleft colSpan=3D3>
<TABLE class=3DCommentForm =
id=3DAnonymousPostComment1_tbCaptchaImage=20
cellSpacing=3D0 cellPadding=3D0 border=3D0>
<TBODY>
<TR>
<TD colSpan=3D3><SPAN =
id=3DAnonymousPostComment1_Requiredfieldvalidator4=20
style=3D"DISPLAY: none; COLOR: red" initialvalue=3D""=20
evaluationfunction=3D"RequiredFieldValidatorEvaluateIsValid" =
=
errormessage=3D"=E8=AF=B7=E8=BE=93=E5=85=A5=E9=AA=8C=E8=AF=81=E7=A0=81"=20
=
controltovalidate=3D"AnonymousPostComment1_CodeNumberTextBox"=20
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -