`

Spring HibernateTemplate getHibernateTemplate()

阅读更多
一、find(String queryString);

     示例:this.getHibernateTemplate().find("from bean.User");

     返回所有User对象


二、find(String queryString , Object value);

     示例:this.getHibernateTemplate().find("from bean.User u where u.name=?", "test");

     或模糊查询:this.getHibernateTemplate().find("from bean.User u where u.name like ?", "%test%");

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


三、find(String queryString, Object[] values);

     示例:String hql= "from bean.User u where u.name=? and u.password=?"

               this.getHibernateTemplate().find(hql, new String[]{"test", "123"});

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


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

四、findByExample(Object exampleEntity)

     示例:

            User u=new User();    

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

            u.setName("bb");    

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

     返回:用户名为bb密码为123的对象



五、findByExample(Object exampleEntity, int firstResult, int maxResults)

     示例:

           User u=new User();    

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

           u.setName("bb");    

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

     返回:满足用户名为bb密码为123,自start起共max个User对象。(对象从0开始计数)



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

六、findByNamedParam(String queryString , String paramName , Object value)



   使用以下语句查询: 

        String queryString = "select count(*) from bean.User u where u.name=:myName"; 

        String paramName= "myName";

        String value= "xiyue";

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

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

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


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

     示例:

     String queryString = "select count(*) from bean.User u where u.name=:myName and u.password=:myPassword"; 

        String[] paramName= new String[]{"myName", "myPassword"};

        String[] value= new String[]{"xiyue", "123"};

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

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


八、findByNamedQuery(String queryName)

     示例:

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

            <hibernate-mapping>

                 <class>......</class>

                 <query name="queryAllUser"><!--此查询被调用的名字-->

                      <![CDATA[

                           from bean.User

                       ]]>

                 </query>

            </hibernate-mapping>

        2、如下使用查询:

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


九、findByNamedQuery(String queryName, Object value)

     示例:

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

            <hibernate-mapping>

                 <class>......</class>

                 <query name="queryByName"><!--此查询被调用的名字-->

                      <![CDATA[

                           from bean.User u where u.name = ?

                       ]]>

                 </query>

            </hibernate-mapping>

        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); 
  
其他回答 按时间排序 按投票数排序  
   转自 http://wbzboy.iteye.com
分享到:
评论

相关推荐

    spring hibernatetemplate

    在Spring框架中,`HibernateTemplate`是一个非常重要的组件,它为开发者提供了与Hibernate持久化库交互的便捷方式。然而,正如描述中所指出的,直接使用`HibernateTemplate`进行事务管理并不总是最佳实践,尤其是在...

    hibernateTemplate

    其中,`HibernateTemplate`作为Spring框架中的一个重要组件,为开发者提供了丰富的API来处理数据库操作,使得开发人员能够更加专注于业务逻辑的编写,而不是繁琐的数据访问细节。 #### 二、HibernateTemplate简介 ...

    HibernateTemplate的用法总结

    HibernateTemplate是Spring框架提供的一种操作Hibernate的方式,它简化了Hibernate的使用过程,使开发者无需关注Session的管理与事务控制,极大地提高了开发效率。本文将对HibernateTemplate的主要用法进行详细介绍...

    HibernateTemplate 的常规用法.doc

    《轻量级 J2EE 企业应用实战: Struts+Spring+Hibernate 整合开发》一书中详述了Spring与Hibernate的整合,其中一个重要组件就是HibernateTemplate。它为简化Hibernate在Spring框架中的使用提供了便利,减少了手动...

    hibernateTemplate和HibernateDaoSupport

    hibernateTemplate 和 HibernateDaoSupport 是 Spring 框架中针对 Hibernate 数据库访问层的两个重要组件,它们简化了基于 Hibernate 的数据操作,使得开发者能够更高效地进行 CRUD(创建、读取、更新、删除)操作。...

    getHibernateTemplate分页-模糊查询

    `getHibernateTemplate()`方法是Spring框架提供的,用于获取`HibernateTemplate`实例的方法。该实例封装了对Hibernate Session的操作,可以方便地执行CRUD操作。 **示例代码**: ```java public class InfoDAOImpl ...

    hibernateDaoSurpport和hibernateTemplate

    1. **public final HibernateTemplate getHibernateTemplate()**:返回一个`HibernateTemplate`实例。 2. **public final void setSessionFactory(SessionFactory sessionFactory)**:设置SessionFactory。 在实际...

    第24次课-1 Spring与Hibernate的整合

    public final HibernateTemplate getHibernateTemplate() public final void setSessionFactory(SessionFactory sf) 思考题 1. Spring中是怎么对Hibernate进行支持的? 2. 如何进行Spring与Hibernate的整合?

    getHibernateTemplate()使用方法

    它位于`org.springframework.orm.hibernate5.HibernateTemplate`类中,是Spring对Hibernate进行封装的一部分。通过这个模板方法,开发者可以方便地执行查询、更新等操作而无需关心事务管理等底层细节。 #### 常用...

    jsp中调用dao的getHibernateTemplate()时,报空指针

    通常情况下,我们在 DAO 中使用 getHibernateTemplate() 方法来获取 HibernateTemplate 对象,以便进行数据库操作。 但是,在 JSP 中调用 DAO 的 getHibernateTemplate() 方法时,可能会报空指针异常。这是因为,在...

    SSH2增删改查使用HibernateTemplate

    在这个框架中,HibernateTemplate是Spring提供的一个工具类,它简化了Hibernate的使用,使得开发者可以更方便地进行数据库操作,如增删改查。接下来,我们将深入探讨如何在SSH2中使用HibernateTemplate进行这些基本...

    HibernateTemplate及generator用法.doc

    为了简化Hibernate与Spring的整合,Spring提供了`HibernateTemplate`类,它是一个封装了Hibernate Session的工具类,使得在处理数据库操作时更加方便。`HibernateTemplate`在事务管理、异常转换等方面提供了很多便利...

    HibernateTemplate类的使用

    为了更便捷地使用Hibernate,Spring框架提供了一系列工具类来简化其操作流程,其中`HibernateTemplate`就是其中一个非常重要的组件。本文将详细介绍`HibernateTemplate`的基本概念、工作原理以及如何正确使用它来...

    spring使用心得 java ssh

    "getHibernateTemplate的用法.txt"指的是Spring整合Hibernate时,使用HibernateTemplate类进行数据库操作。HibernateTemplate是对Hibernate Session的一层封装,提供了一组方便的方法来执行CRUD操作。然而,随着...

    我的智囊团(SSH)01--07学习笔记

    在本文中,我们将深入探讨`HibernateTemplate`在SSH(Struts、Spring、Hibernate)架构中的应用,以及如何使用它来执行常见的数据访问操作。SSH是一种流行的企业级Java应用程序开发框架,其中Spring框架提供了`...

    Spring+Hibernate实现增删改查的两种方法

    本文将深入探讨如何利用Spring与Hibernate整合,通过两种不同的方式来实现这些基本操作:HibernateTemplate和HibernateDaoSupport。 **一、HibernateTemplate** HibernateTemplate是Spring提供的一个方便的类,它...

    HibernateTemplate及generator用法.docx

    为了简化Hibernate与Spring的集成,Spring提供了HibernateTemplate类,它是Spring对Hibernate的一种封装,使得在DAO层操作数据库变得更加简便和安全。 首先,我们来看如何在DAO中使用HibernateTemplate。通常,DAO...

    Spring相关测试4

    与HibernateTemplate不同,HibernateDaoSupport并不直接执行数据库操作,而是提供了getHibernateTemplate()方法,允许我们在DAO类中直接使用HibernateTemplate实例进行操作。这样,我们可以在需要更多控制权的地方...

    spring-orm源码

    例如,对于Hibernate,Spring提供了HibernateTemplate和HibernateDaoSupport类,它们简化了与Hibernate Session的交互。源码中可以看到这些类如何包装和暴露基本的Hibernate操作。 4. **SessionFactory和Session** ...

    JavaEE spring和Hibernate整合(没有hibernate.cfg.xml)

    // CRUD操作时,通过getHibernateTemplate()获取并使用HibernateTemplate } ``` 3. **事务管理** - 在Spring中,我们可以使用声明式事务管理,将事务配置在Spring配置文件中,简化事务控制代码。例如: ```xml...

Global site tag (gtag.js) - Google Analytics