常用hql查询.docx

上传人:b****7 文档编号:8880355 上传时间:2023-02-02 格式:DOCX 页数:11 大小:15.97KB
下载 相关 举报
常用hql查询.docx_第1页
第1页 / 共11页
常用hql查询.docx_第2页
第2页 / 共11页
常用hql查询.docx_第3页
第3页 / 共11页
常用hql查询.docx_第4页
第4页 / 共11页
常用hql查询.docx_第5页
第5页 / 共11页
点击查看更多>>
下载资源
资源描述

常用hql查询.docx

《常用hql查询.docx》由会员分享,可在线阅读,更多相关《常用hql查询.docx(11页珍藏版)》请在冰豆网上搜索。

常用hql查询.docx

常用hql查询

一、find(StringqueryString);

二、findByExample()使用时得出结论:

1.不支持主键

2.不支持关联

3.不支持NULL

     示例:

this.getHibernateTemplate().find(”frombean.User”);

     返回所有User对象

二、find(StringqueryString,Objectvalue);

     示例:

this.getHibernateTemplate().find(”frombean.Useruwhereu.name=?

”,“test”);

     或模糊查询:

this.getHibernateTemplate().find(”frombean.Useruwhereu.namelike?

”,“%test%”);

     返回name属性值为test的对象(模糊查询,返回name属性值包含test的对象)

三、find(StringqueryString,Object[]values);

     示例:

Stringhql=“frombean.Useruwhereu.name=?

andu.password=?

               this.getHibernateTemplate().find(hql,newString[]{”test”,“123″});

     返回用户名为test并且密码为123的所有User对象

---------------------------------

四、findByExample(ObjectexampleEntity)

     示例:

            Useru=newUser();    

            u.setPassword(”123″);//必须符合的条件但是这两个条件时并列的(象当于sql中的and)    

            u.setName(”bb”);    

            list=this.getHibernateTemplate().findByExample(u,start,max);  

     返回:

用户名为bb密码为123的对象

五、findByExample(ObjectexampleEntity,intfirstResult,intmaxResults)

     示例:

           Useru=newUser();    

           u.setPassword(”123″);//必须符合的条件但是这两个条件时并列的(象当于sql中的and)    

           u.setName(”bb”);    

           list=this.getHibernateTemplate().findByExample(u,start,max);    

     返回:

满足用户名为bb密码为123,自start起共max个User对象。

(对象从0开始计数)

—————————————————

六、findByNamedParam(StringqueryString,StringparamName,Objectvalue)

   使用以下语句查询:

 

        StringqueryString=“selectcount(*)frombean.Useruwhereu.name=:

myName”; 

        StringparamName=“myName”;

        Stringvalue=“xiyue”;

this.getHibernateTemplate().findByNamedParam(queryString,paramName,value); 

        System.out.println(list.get(0)); 

    返回name为xiyue的User对象的条数

七、findByNamedParam(StringqueryString,String[]paramName,Object[]value)

     示例:

        StringqueryString=“selectcount(*)frombean.Useruwhereu.name=:

myNameandu.password=:

myPassword”; 

        String[]paramName=newString[]{”myName”,“myPassword”};

        String[]value=newString[]{”xiyue”,“123″};

this.getHibernateTemplate().findByNamedParam(queryString,paramName,value);

        返回用户名为xiyue密码为123的User对象

八、findByNamedQuery(StringqueryName)

     示例:

       1、首先需要在User.hbm.xml中定义命名查询

            

                 ……

                 

–此查询被调用的名字–>

                      

[CDATA[

                           frombean.User

                       ]]>

                 

            

        2、如下使用查询:

this.getHibernateTemplate().findByNamedQuery(”queryAllUser”);

九、findByNamedQuery(StringqueryName,Objectvalue)

     示例:

       1、首先需要在User.hbm.xml中定义命名查询

            

                 ……

                 

–此查询被调用的名字–>

                      

[CDATA[

                           frombean.Useruwhereu.name=?

                       ]]>

                 

            

        2、如下使用查询:

this.getHibernateTemplate().findByNamedQuery(”queryByName”,“test”);

十、findByNamedQuery(StringqueryName,Object[]value)

     示例:

       1、首先需要在User.hbm.xml中定义命名查询

            

                 ……

                 

–此查询被调用的名字–>

                      

[CDATA[

                           frombean.Useruwhereu.name=?

andu.password=?

                       ]]>

                 

            

        2、如下使用查询:

            String[]values=newString[]{”test”,“123″};

this.getHibernateTemplate().findByNamedQuery(”queryByNameAndPassword”,values);

十一、findByNamedQueryAndNamedParam(StringqueryName,StringparamName,Objectvalue) 

示例:

       1、首先需要在User.hbm.xml中定义命名查询

            

                 ……

                 

–此查询被调用的名字–>

                      

[CDATA[

                           frombean.Useruwhereu.name=:

myName

                       ]]>

                 

            

        2、如下使用查询:

this.getHibernateTemplate().findByNamedQuery(”queryByName”,“myName”,“test”);

十二、findByNamedQueryAndNamedParam(StringqueryName,String[]paramName,Object[]value) 

示例:

       1、首先需要在User.hbm.xml中定义命名查询

            

                 ……

                 

–此查询被调用的名字–>

                      

[CDATA[

                           frombean.Useruwhereu.name=:

myNameandu.password=:

myPassword

                       ]]>

                 

            

        2、如下使用查询:

            String[]names=newString[]{”myName”,“myPassword”};

            String[]values=newString[]{”test”,“123″};

this.getHibernateTemplate().findByNamedQuery(”queryByNameAndPassword”,names,values);

十三、findByValueBean(StringqueryString,Objectvalue);

示例:

     1、定义一个ValueBean,属性名必须和HSQL语句中的:

后面的变量名同名,此处必须至少有两个属性,分别为myName和myPassword,使用setter方法设置属性值后

         ValueBeanvalueBean=newValueBean();

         valueBean.setMyName(”test”);

         valueBean.setMyPasswrod(”123″);

     2、

         StringqueryString=“frombean.Useruwhereu.name=:

myNameandu.password=:

myPassword”;

         this.getHibernateTemplate().findByValueBean(queryString,valueBean);

十四、findByNamedQueryAndValueBean(StringqueryName,Objectvalue);

示例:

      1、首先需要在User.hbm.xml中定义命名查询

            

                 ……

                 

–此查询被调用的名字–>

                      

[CDATA[

                           frombean.Useruwhereu.name=:

myNameandu.password=:

myPassword

                       ]]>

                 

            

     2、定义一个ValueBean,属性名必须和User.hbm.xml命名查询语句中的:

后面的变量名同名,此处必须至少有两个属性,分别为myName和myPassword,使用setter方法设置属性值后

         ValueBeanvalueBean=newValueBean();

         valueBean.setMyName(”test”);

         valueBean.setMyPasswrod(”123″);

     3、

         StringqueryString=“frombean.Useruwhereu.name=:

myNameandu.password=:

myPassword”;

         this.getHibernateTemplate().findByNamedQueryAndValueBean(”queryByNameAndPassword”,valueBean);

一、find(StringqueryString);

     示例:

this.getHibernateTemplate().find(”frombean.User”);

     返回所有User对象

二、find(StringqueryString,Objectvalue);

     示例:

this.getHibernateTemplate().find(”frombean.Useruwhereu.name=?

”,“test”);

     或模糊查询:

this.getHibernateTemplate().find(”frombean.Useruwhereu.namelike?

”,“%test%”);

     返回name属性值为test的对象(模糊查询,返回name属性值包含test的对象)

三、find(StringqueryString,Object[]values);

     示例:

Stringhql=“frombean.Useruwhereu.name=?

andu.password=?

               this.getHibernateTemplate().find(hql,newString[]{”test”,“123″});

     返回用户名为test并且密码为123的所有User对象

---------------------------------

四、findByExample(ObjectexampleEntity)

     示例:

            Useru=newUser();    

            u.setPassword(”123″);//必须符合的条件但是这两个条件时并列的(象当于sql中的and)    

            u.setName(”bb”);    

            list=this.getHibernateTemplate().findByExample(u,start,max);  

     返回:

用户名为bb密码为123的对象

五、findByExample(ObjectexampleEntity,intfirstResult,intmaxResults)

     示例:

           Useru=newUser();    

           u.setPassword(”123″);//必须符合的条件但是这两个条件时并列的(象当于sql中的and)    

           u.setName(”bb”);    

           list=this.getHibernateTemplate().findByExample(u,start,max);    

     返回:

满足用户名为bb密码为123,自start起共max个User对象。

(对象从0开始计数)

—————————————————

六、findByNamedParam(StringqueryString,StringparamName,Objectvalue)

   使用以下语句查询:

 

        StringqueryString=“selectcount(*)frombean.Useruwhereu.name=:

myName”; 

        StringparamName=“myName”;

        Stringvalue=“xiyue”;

this.getHibernateTemplate().findByNamedParam(queryString,paramName,value); 

        System.out.println(list.get(0)); 

    返回name为xiyue的User对象的条数

七、findByNamedParam(StringqueryString,String[]paramName,Object[]value)

     示例:

        StringqueryString=“selectcount(*)frombean.Useruwhereu.name=:

myNameandu.password=:

myPassword”; 

        String[]paramName=newString[]{”myName”,“myPassword”};

        String[]value=newString[]{”xiyue”,“123″};

this.getHibernateTemplate().findByNamedParam(queryString,paramName,value);

        返回用户名为xiyue密码为123的User对象

八、findByNamedQuery(StringqueryName)

     示例:

       1、首先需要在User.hbm.xml中定义命名查询

            

                 ……

                 

–此查询被调用的名字–>

                      

[CDATA[

                           frombean.User

                       ]]>

                 

            

        2、如下使用查询:

this.getHibernateTemplate().findByNamedQuery(”queryAllUser”);

九、findByNamedQuery(StringqueryName,Objectvalue)

     示例:

       1、首先需要在User.hbm.xml中定义命名查询

            

                 ……

                 

–此查询被调用的名字–>

                      

[CDATA[

                           frombean.Useruwhereu.name=?

                       ]]>

                 

            

        2、如下使用查询:

this.getHibernateTemplate().findByNamedQuery(”queryByName”,“test”);

十、findByNamedQuery(StringqueryName,Object[]value)

     示例:

       1、首先需要在User.hbm.xml中定义命名查询

            

                 ……

                 

–此查询被调用的名字–>

                      

[CDATA[

                           fromb

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高等教育 > 农学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1