hibernatetemplate 中方法的使用

  1. 一、find(String queryString);  
  2.   
  3.      示例:this .getHibernateTemplate().find( "from bean.User" );  
  4.   
  5.      返回所有User对象  
  6.   
  7.   
  8.   
  9. 二、find(String queryString , Object value);  
  10.   
  11.      示例:this .getHibernateTemplate().find( "from bean.User u where u.name=?""test" );  
  12.   
  13.      或模糊查询:this .getHibernateTemplate().find( "from bean.User u where u.name like ?""%test%" );  
  14.   
  15.      返回name属性值为test的对象(模糊查询,返回name属性值包含test的对象)  
  16.   
  17.   
  18.   
  19. 三、find(String queryString, Object[] values);  
  20.   
  21.      示例:String hql= "from bean.User u where u.name=? and u.password=?"   
  22.   
  23.                this .getHibernateTemplate().find(hql,  new  String[]{ "test""123" });  
  24.   
  25.      返回用户名为test并且密码为123 的所有User对象  
  26.   
  27.   
  28.   
  29. ---------------------------------  
  30.   
  31. 四、findByExample(Object exampleEntity)  
  32.   
  33.      示例:  
  34.   
  35.             User u=new  User();      
  36.   
  37.             u.setPassword("123" ); //必须 符合的条件但是这两个条件时并列的(象当于sql中的and)       
  38.   
  39.             u.setName("bb" );      
  40.   
  41.             list=this .getHibernateTemplate().findByExample(u,start,max);    
  42.   
  43.      返回:用户名为bb密码为123 的对象  
  44.   
  45.   
  46.   
  47. 五、findByExample(Object exampleEntity, int  firstResult,  int  maxResults)  
  48.   
  49.      示例:  
  50.   
  51.            User u=new  User();      
  52.   
  53.            u.setPassword("123" ); //必须 符合的条件但是这两个条件时并列的(象当于sql中的and)       
  54.   
  55.            u.setName("bb" );      
  56.   
  57.            list=this .getHibernateTemplate().findByExample(u,start,max);      
  58.   
  59.      返回:满足用户名为bb密码为123 ,自start起共max个User对象。(对象从 0 开始计数)  
  60.   
  61.   
  62.   
  63. ---------------------------------------------------  
  64.   
  65. 六、findByNamedParam(String queryString , String paramName , Object value)  
  66.   
  67.   
  68.   
  69.    使用以下语句查询:   
  70.   
  71.         String queryString = "select count(*) from bean.User u where u.name=:myName" ;   
  72.   
  73.         String paramName= "myName" ;  
  74.   
  75.         String value= "xiyue" ;  
  76.   
  77.         this .getHibernateTemplate().findByNamedParam(queryString, paramName, value);   
  78.   
  79.         System.out.println(list.get(0 ));   
  80.   
  81.     返回name为xiyue的User对象的条数  
  82.   
  83.   
  84.   
  85. 七、findByNamedParam(String queryString , String[] paramName , Object[] value)  
  86.   
  87.      示例:  
  88.   
  89.         String queryString = "select count(*) from bean.User u where u.name=:myName and u.password=:myPassword" ;   
  90.   
  91.         String[] paramName= new  String[]{ "myName""myPassword" };  
  92.   
  93.         String[] value= new  String[]{ "xiyue""123" };  
  94.   
  95.         this .getHibernateTemplate().findByNamedParam(queryString, paramName, value);  
  96.   
  97.         返回用户名为xiyue密码为123 的User对象  
  98.   
  99.   
  100.   
  101. 八、findByNamedQuery(String queryName)  
  102.   
  103.      示例:  
  104.   
  105.        1 、首先需要在User.hbm.xml中定义命名查询  
  106.   
  107.             <hibernate-mapping>  
  108.   
  109.                  <class >......</ class >  
  110.   
  111.                  <query name="queryAllUser" ><!--此查询被调用的名字-->  
  112.   
  113.                       <![CDATA[  
  114.   
  115.                            from bean.User  
  116.   
  117.                        ]]>  
  118.   
  119.                  </query>  
  120.   
  121.             </hibernate-mapping>  
  122.   
  123.         2 、如下使用查询:  
  124.   
  125.             this .getHibernateTemplate().findByNamedQuery( "queryAllUser" );  
  126.   
  127.   
  128.   
  129. 九、findByNamedQuery(String queryName, Object value)  
  130.   
  131.      示例:  
  132.   
  133.        1 、首先需要在User.hbm.xml中定义命名查询  
  134.   
  135.             <hibernate-mapping>  
  136.   
  137.                  <class >......</ class >  
  138.   
  139.                  <query name="queryByName" ><!--此查询被调用的名字-->  
  140.   
  141.                       <![CDATA[  
  142.   
  143.                            from bean.User u where u.name = ?  
  144.   
  145.                        ]]>  
  146.   
  147.                  </query>  
  148.   
  149.             </hibernate-mapping>  
  150.   
  151.         2 、如下使用查询:  
  152.   
  153.             this .getHibernateTemplate().findByNamedQuery( "queryByName""test" );  
  154.   
  155.   
  156.   
  157. 十、findByNamedQuery(String queryName, Object[] value)  
  158.   
  159.      示例:  
  160.   
  161.        1 、首先需要在User.hbm.xml中定义命名查询  
  162.   
  163.             <hibernate-mapping>  
  164.   
  165.                  <class >......</ class >  
  166.   
  167.                  <query name="queryByNameAndPassword" ><!--此查询被调用的名字-->  
  168.   
  169.                       <![CDATA[  
  170.   
  171.                            from bean.User u where u.name =? and u.password =?  
  172.   
  173.                        ]]>  
  174.   
  175.                  </query>  
  176.   
  177.             </hibernate-mapping>  
  178.   
  179.         2 、如下使用查询:  
  180.   
  181.             String[] values= new  String[]{ "test""123" };  
  182.   
  183.             this .getHibernateTemplate().findByNamedQuery( "queryByNameAndPassword"  , values);  
  184.   
  185.   
  186.   
  187. 十一、findByNamedQueryAndNamedParam(String queryName, String paramName, Object value)   
  188.   
  189. 示例:  
  190.   
  191.        1 、首先需要在User.hbm.xml中定义命名查询  
  192.   
  193.             <hibernate-mapping>  
  194.   
  195.                  <class >......</ class >  
  196.   
  197.                  <query name="queryByName" ><!--此查询被调用的名字-->  
  198.   
  199.                       <![CDATA[  
  200.   
  201.                            from bean.User u where u.name =:myName  
  202.   
  203.                        ]]>  
  204.   
  205.                  </query>  
  206.   
  207.             </hibernate-mapping>  
  208.   
  209.         2 、如下使用查询:  
  210.   
  211.             this .getHibernateTemplate().findByNamedQuery( "queryByName"  ,  "myName""test" );  
  212.   
  213.   
  214.   
  215. 十二、findByNamedQueryAndNamedParam(String queryName, String[] paramName, Object[] value)   
  216.   
  217. 示例:  
  218.   
  219.        1 、首先需要在User.hbm.xml中定义命名查询  
  220.   
  221.             <hibernate-mapping>  
  222.   
  223.                  <class >......</ class >  
  224.   
  225.                  <query name="queryByNameAndPassword" ><!--此查询被调用的名字-->  
  226.   
  227.                       <![CDATA[  
  228.   
  229.                            from bean.User u where u.name =:myName and u.password=:myPassword  
  230.   
  231.                        ]]>  
  232.   
  233.                  </query>  
  234.   
  235.             </hibernate-mapping>  
  236.   
  237.         2 、如下使用查询:  
  238.   
  239.             String[] names= new  String[]{ "myName""myPassword" };  
  240.   
  241.             String[] values= new  String[]{ "test""123" };  
  242.   
  243.   
  244.   
  245.             this .getHibernateTemplate().findByNamedQuery( "queryByNameAndPassword"  , names, values);  
  246.   
  247.   
  248.   
  249. 十三、findByValueBean(String queryString , Object value);  
  250.   
  251. 示例:  
  252.   
  253.      1 、定义一个ValueBean,属性名必须和HSQL语句中的:后面的变量名同名,此处必须至少有两个属性,分别为myName和myPassword,使用setter方法设置属性值后  
  254.   
  255.          ValueBean valueBean= new  ValueBean();  
  256.   
  257.          valueBean.setMyName("test" );  
  258.   
  259.          valueBean.setMyPasswrod("123" );  
  260.   
  261.      2 、  
  262.   
  263.          String queryString= "from bean.User u where u.name=:myName and u.password=:myPassword" ;  
  264.   
  265.          this .getHibernateTemplate().findByValueBean(queryString , valueBean);  
  266.   
  267.          
  268.   
  269. 十四、findByNamedQueryAndValueBean(String queryName , Object value);  
  270.   
  271. 示例:  
  272.   
  273.       1 、首先需要在User.hbm.xml中定义命名查询  
  274.   
  275.             <hibernate-mapping>  
  276.   
  277.                  <class >......</ class >  
  278.   
  279.                  <query name="queryByNameAndPassword" ><!--此查询被调用的名字-->  
  280.   
  281.                       <![CDATA[  
  282.   
  283.                            from bean.User u where u.name =:myName and u.password=:myPassword  
  284.   
  285.                        ]]>  
  286.   
  287.                  </query>  
  288.   
  289.             </hibernate-mapping>  
  290.   
  291.      2 、定义一个ValueBean,属性名必须和User.hbm.xml命名查询语句中的:后面的变量名同名,此处必须至少有两个属性,分别为myName和myPassword,使用setter方法设置属性值后  
  292.   
  293.          ValueBean valueBean= new  ValueBean();  
  294.   
  295.          valueBean.setMyName("test" );  
  296.   
  297.          valueBean.setMyPasswrod("123" );  
  298.   
  299.   
  300.   
  301.   
  302.      3 、  
  303.   
  304.   
  305.   
  306.          String queryString= "from bean.User u where u.name=:myName and u.password=:myPassword" ;  
  307.   
  308.          this .getHibernateTemplate().findByNamedQueryAndValueBean( "queryByNameAndPassword" , valueBean);   
  309.     
  310.   
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值