Spring中常用的 getHibernateTemplate() 方法(收藏)
? ??2、如下使用查询:
? ? ? ? ?? ?this.getHibernateTemplate().findByNamedQuery("queryByName", "test");
?
十、findByNamedQuery(String queryName, Object[] value)
? ? ? 示例:
? ? ? ? 1、首先需要在User.hbm.xml中定义命名查询
? ? ? ? ? ??<hibernate-mapping>
? ? ? ? ? ? ? ? ? <class>......</class>
? ? ? ? ? ? ? ? ? <query name="queryByNameAndPassword"><!--此查询被调用的名字-->
? ? ? ? ? ? ? ? ? ? ??<![CDATA[
? ? ? ? ? ? ? ? ? ? ? ? ? ? from bean.User u where u.name =? and u.password =?
? ? ? ? ? ? ? ? ? ? ? ? ]]>
? ? ? ? ? ? ? ? ? </query>
? ? ? ? ? ? ?</hibernate-mapping>
?
? ? ? ? ?2、如下使用查询:
? ? ? ? ? ??String[] values= new String[]{"test", "123"};
? ? ? ? ? ? ?this.getHibernateTemplate().findByNamedQuery("queryByNameAndPassword" , values);
?
十一、findByNamedQueryAndNamedParam(String queryName, String paramName, Object value)?
?示例:
? ? ? ? 1、首先需要在User.hbm.xml中定义命名查询
? ? ? ? ? ? ?<hibernate-mapping>
? ? ? ? ? ? ? ? ? <class>......</class>
? ? ? ? ? ? ? ?? <query name="queryByName"><!--此查询被调用的名字-->
? ? ? ? ? ? ? ? ? ? ??<![CDATA[
? ? ? ? ? ? ? ? ? ? ? ? ? ? from bean.User u where u.name =:myName
? ? ? ? ? ? ? ? ? ? ? ? ]]>
? ? ? ? ? ? ? ? ? </query>
? ? ? ? ? ? ?</hibernate-mapping>
?
? ? ? ? ?2、如下使用查询:
? ? ? ? ? ??this.getHibernateTemplate().findByNamedQuery("queryByName" , "myName", "test");
?
十二、findByNamedQueryAndNamedParam(String queryName, String[] paramName, Object[] value)?
?示例:
? ? ? ? 1、首先需要在User.hbm.xml中定义命名查询
? ? ? ? ? ??<hibernate-mapping>
? ? ? ? ? ? ? ? ? <class>......</class>
? ? ? ? ? ? ? ? ? <query name="queryByNameAndPassword"><!--此查询被调用的名字-->
? ? ? ? ? ? ? ? ? ? ??<![CDATA[
? ? ? ? ? ? ? ? ? ? ? ? ? ? from bean.User u where u.name =:myName and u.password=:myPassword
? ? ? ? ? ? ? ? ? ? ? ? ]]>
? ? ? ? ? ? ? ? ? </query>
? ? ? ? ? ? ?</hibernate-mapping>
?
? ? ? ? ?2、如下使用查询:
? ? ? ? ? ??String[] names= new String[]{"myName", "myPassword"};
? ? ? ? ? ? ?String[] values= new String[]{"test", "123"};
? ? ? ? ? ? ?this.getHibernateTemplate().findByNamedQuery("queryByNameAndPassword" , names, values);
?
?十三、findByValueBean(String queryString , Object value);
?示例:
1、定义一个ValueBean,属性名必须和HSQL语句中的:后面的变量名同名,此处必须至少有两个属性,分别为myName和myPassword,使用setter方法设置属性值后
? ? ? ?? ValueBean valueBean= new ValueBean();
? ? ? ? ? valueBean.setMyName("test");
? ? ? ? ? valueBean.setMyPasswrod("123");
?
? ? ? 2、String queryString= "from bean.User u where u.name=:myName and u.password=:myPassword";
? ? ? ? ?this.getHibernateTemplate().findByValueBean(queryString , valueBean);
?
?十四、findByNamedQueryAndValueBean(String queryName , Object value);
?示例:
? ? ? ?1、首先需要在User.hbm.xml中定义命名查询
? ? ? ? ? ??<hibernate-mapping>
? ? ? ? ? ? ? ? ? <class>......</class>
? ? ? ? ? ? ? ? ? <query name="queryByNameAndPassword"><!--此查询被调用的名字-->
? ? ? ? ? ? ? ? ? ?? ?<![CDATA[
? ? ? ? ? ? ? ? ? ? ? ? ? ? from bean.User u where u.name =:myName and u.password=:myPassword
? ? ? ? ? ? ? ? ? ? ? ? ]]>
? ? ? ? ? ?? ? ? </query>
? ? ? ? ? ? ?</hibernate-mapping>
?
? ? ? 2、定义一个ValueBean,属性名必须和User.hbm.xml命名查询语句中的:后面的变量名同名,此处必须至少有两个属性,分别为myName和myPassword,使用setter方法设置属性值后
? ? ? ? ?ValueBean valueBean= new ValueBean();
? ? ? ? ? valueBean.setMyName("test");
? ? ? ? ? valueBean.setMyPasswrod("123");
?
? ? ? 3、String queryString= "from bean.User u where u.name=:myName and u.password=:myPassword";
? ? ? ? ? this.getHibernateTemplate().findByNamedQueryAndValueBean("queryByNameAndPassword", valueBean);
?