`
xiandaoyan
  • 浏览: 22247 次
  • 性别: Icon_minigender_1
  • 来自: 成都
社区版块
存档分类
最新评论

spring中的hibernate回调机制

阅读更多

对应于Hibernate Session接口暴露出来的方法,HibernateTemplate提供了大量与之对应的接口,但是存在一下几种情况,需要使用到回调机制:

        1.需要使用的Seesion方法没有在HibernateTemplate中提供是需要使用回调机制。使用实例:

public List findByUserName(final String userName)

        {

          /**
         * 根据用户名取用户的信息
         */
         public List getInfoByUserName(final String userName)
        {
                 return (List) this.hibernateTemplate.execute(new HibernateCallback(){
                     public Object doInHibernate(Session session) throws HibernateException, SQLException
            {
                Criteria criteria = session.createCriteria(UserDto.class);
                criteria.add(Expression.eq("userName",userName));
                criteria.setMaxResults(10);
                return criteria.list(); 
            }
          });
         }

 

        2.需要使用sql语句时可以使用。实例如下:

         /**
           * 根据日期区间查找统计信息
       */

        String sql = "select DATE_FORMAT(time ,'%X-%v) update_time,avg(time1)" +
                    "time1,sum(salary) salary" +
                    "from table where update_time between '2010-01-01' and '2010-12-01' ";
        public List find(final String sql)
         {
           List list = (List) this.hibernateTemplate.execute(
                new HibernateCallback()
                {
                    public Object doInHibernate(final Session session)
                            throws HibernateException, SQLException
                    {
                        Query query = session.createSQLQuery(sql);
                        return query.list();
                    }
                });
            return list;
          }

 

        

 

未完待续......

1
4
分享到:
评论

相关推荐

    Spring + Hibernate + Spring mvc +Ajax 整合

    7. **响应处理**:Controller处理完请求后,可以返回JSON数据,前端使用Ajax回调函数解析并更新DOM。 8. **视图解析**:Spring MVC的视图解析器如JSP、Thymeleaf或FreeMarker,用于生成最终的HTML页面。 这个项目...

    Spring3Hibernate4整合jar包

    整合的关键在于配置 Spring 的 JDBC 回调和 Hibernate 的 SessionFactory。Spring 可以通过其声明式事务管理来控制 Hibernate 的事务,这样可以避免手动管理事务的复杂性。同时,Spring 提供的 ...

    spring整合hibernate例子

    这些类包含属性(对应表字段)和getter/setter方法,以及可能的生命周期回调方法。 6. 测试和调用:最后,我们可以通过Spring的ApplicationContext获取到DAO实例,然后调用其方法进行数据库操作。这样,整个流程就...

    Spring整合Hibernate 详解.doc

    通过实现这个接口,可以在执行特定数据库操作前后的回调函数中进行额外的工作,如事务控制、日志记录等。 6.5.6 使用IoC容器组装各种组件 Spring的IoC容器是其核心特性之一,它负责管理应用中的对象及其依赖关系。...

    spring3.2 hibernate4 demo CRUD 完整例子

    Spring 3.2是该框架的一个版本,它增强了对Java EE 6的支持,提供了更好的类型安全的回调注解,并且改进了数据访问层的抽象。 其次,Hibernate是一个对象关系映射(ORM)框架,它允许开发者使用Java对象来操作数据库...

    spring+hibernate详解

    通过`HibernateTemplate`的`execute`方法传入一个实现了`HibernateCallback`接口的对象,可以在回调方法中执行任意的Hibernate操作。 ```java public class PersonDaoImpl extends HibernateDaoSupport implements ...

    Struts+Spring+Hibernate之选课系统

    Spring还支持使用回调机制(如HibernateCallback)处理特殊查询和分页。 Hibernate的核心在于对象关系映射,它允许我们将Java对象直接映射到数据库表。开发者需要正确配置实体类(Entity)和数据访问对象(DAO),...

    Spring整合hibernate

    它通过回调机制(HibernateCallback)对Hibernate的操作进行封装,使开发者能够以一种更面向对象的方式处理数据库交互。例如,你可以通过实现HibernateCallback接口的doInHibernate方法,传入一个回调函数,执行特定...

    struts2+spring+hibernate分页显示完整代码

    `queryForPage` 方法通过`getHibernateTemplate().executeFind()`方法执行HQL查询,并利用`HibernateCallback`接口回调来设置查询的起始位置和最大结果数,从而实现分页。`getAllRowCount` 方法则直接返回HQL查询后...

    Spring+hibernate 单元测试

    TestExecutionListener 接口定义了一系列回调方法,用于在不同的测试阶段执行特定的操作。Spring 提供了几个内置的实现类: - **DependencyInjectionTestExecutionListener**:负责解析测试用例中的 `@Autowired` ...

    MyEclipse的整合Struts+Spring+Hibernate简单例子开发

    - 在`com.lnic.dao`包中创建`UserDao`接口,定义获取用户信息的方法`getName(String id)`,以及其实现类`UserDaoImpl`,继承`HibernateDaoSupport`,使用Hibernate回调方法处理数据库操作。 - 配置`hibernate.cfg....

    Spring_Hibernate_JAVAX_Annotation注解

    2. **JSR 250**:定义了几个核心注解,如`@PostConstruct`和`@PreDestroy`,用于生命周期回调方法的标注。 3. **JSR 330**:定义了依赖注入的标准注解,如`@Inject`用于字段级别的DI。 4. **JSR 220**:为EJB 3.0...

    Spring4.0+Hibernate4.0+SpringMVC4.0整合框架

    Spring4.0引入了更多的改进,包括对Java 8的支持、增强的类型安全的回调注解、改进的缓存抽象以及对WebSocket的支持。在Spring4中,可以使用JSR-330的依赖注入注解,如`@Inject`,同时保持向后兼容。 SpringMVC是...

    Spring hibernate开发的网上支付续

    Spring的RestTemplate或WebClient可以帮助我们调用这些API,处理支付回调和异步通知。 4. **异常处理**:Spring的@ControllerAdvice和@ExceptionHandler注解可以全局捕获和处理支付过程中可能出现的异常,提供统一...

    spring + spring mvc + hibernate + mysql 整合开发任务流程后台管理系统

    Spring MVC通过DispatcherServlet、Controller、Model-View-Controller模式以及一系列的回调方法来组织和管理业务逻辑。 接着,Hibernate是一个强大的对象关系映射(ORM)框架,它可以将数据库中的表与Java类映射,...

    Spring4 整合SpringMVC, Hibernate5, SpringSecurity4.2 源码

    Hibernate5引入了新的特性,如实体生命周期回调、多租户支持、更好的JPA兼容性等,提高了开发效率和数据库操作的灵活性。 Spring Security4.2是Spring框架的安全模块,它提供了全面的身份验证、授权和安全控制功能...

    Struts2+Spring+Hibernate+DWR实现的城市联动

    开发者通常会配置DWR的设置,定义允许的远程方法,以及处理回调函数,以便在接收到服务器响应时更新页面。 总的来说,这个项目展示了Java Web开发中常见的一套技术栈,利用Struts2处理请求,Spring管理依赖和事务,...

    车辆管理系统(struts+hibernate+spring+oracle).rar

    车辆管理系统(struts+hibernate+spring+oracle).rar 对​公​务​用​车​进​行​档​案​、​费​用​、​调​度​、​维​修​、​安​全​、​运​行​等​全​方​位​的​管​理​和​统​计​,​以​方​便​...

    struts2+hibernate+spring三大框架知识点笔记

    4. **Bean管理**:Spring容器负责创建、初始化和管理Bean,支持各种生命周期回调方法。 5. **数据访问支持**:Spring整合了多种数据访问技术,包括JDBC、Hibernate、MyBatis等,简化数据库操作。 **整合Struts2、...

Global site tag (gtag.js) - Google Analytics