关于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);   
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值