String sql = "select sysdate from dual";
WebApplicationContext wac = ContextLoader.getCurrentWebApplicationContext();
String[] names = wac.getBeanDefinitionNames();
for(int i=0; i<names.length; i++){
System.out.println("---"+names[i]);
}
SessionFactory sf = (SessionFactory)wac.getBean("sessionFactory");
Session session = sf.openSession();
SQLQuery query = session.createSQLQuery(sql);
//query.addScalar("visitorID", new org.hibernate.type.LongType());
List children = query.list();
Date currentDate = null;
currentDate = (Date)children.iterator().next();
System.out.println(currentDate);
最后要关闭连接
分享到:
相关推荐
在代码中通过Spring的BeanFactory获取SessionFactory对象的示例代码如下: ```java Resource resource = new ClassPathResource("/WEB-INF/applicationContext.xml"); BeanFactory factory = new XmlBeanFactory...
3. **使用HibernateTemplate**:在我们的业务逻辑类中,我们可以通过@Autowired注解或者使用getBean方法从Spring容器中获取HibernateTemplate实例,然后调用它的方法进行数据库操作。例如: ```java @Service ...
这样,Service和DAO可以通过Spring获取SessionFactory,进行数据操作。 6. **测试**:编写测试用例,确保每个组件都能正常工作,然后逐步整合所有组件,验证SSH框架的完整性和功能。 在实际开发中,"整合方式配置...
这样,业务层对象可以直接通过Spring获取SessionFactory,进一步操作数据库。 整合步骤如下: - 添加Struts库和配置文件,确保Struts框架正常工作。 - 引入Spring库,包括Web包,配置文件与Struts配置文件一同放在...
3. **Struts2与Hibernate的整合**:Struts2可以通过Spring获取SessionFactory,然后在Action中创建Session,执行CRUD操作。也可以利用Hibernate插件(struts2-hibernate-plugin)简化这个过程。 4. **配置文件的...
5. **整合工作**:在Struts2的Action类中注入由Spring管理的Service接口,Service层中再注入由Spring管理的DAO接口,DAO接口中通过Spring获取SessionFactory,从而完成SSH的集成。 6. **测试**:编写JUnit测试用例,...
同时,Hibernate的SessionFactory也由Spring管理,当需要进行数据库操作时,Action类可以通过Spring获取SessionFactory并创建Session,进而进行数据库查询或更新。 5. **J2EE背景**:这个项目基于J2EE平台,J2EE...
这样,jBPM4会从Spring的ThreadLocal中获取事务和Session,使得事务管理完全由Spring控制。 3. **启用Spring事务管理**:这种方式下,jBPM4不再创建自己的事务管理器,而是依赖于Spring的事务管理。Spring能够根据...
Action类可以通过Spring获取SessionFactory实例,然后进行数据操作。此外,Spring还提供了HibernateTemplate或JPA的Repository接口简化数据访问。 4. **配置数据库连接**: 创建Hibernate的配置文件(如hibernate.cfg...
4. **整合步骤**:在Action类中,通过Spring获取SessionFactory,然后通过SessionFactory创建Session进行数据库操作。同时,Struts负责接收用户请求,调用相应的Action,Action再通过Hibernate与数据库交互。 **三...
标题中的“SessionFactory.getCurrentSession与openSession的区别”是关于Hibernate框架中的两个关键操作,它们都是用于在Hibernate中获取数据库会话的。理解它们的区别对于优化数据访问性能和管理事务至关重要。 ...
而Hibernate的SessionFactory也是由Spring管理,这样在需要进行数据库操作时,可以通过Spring获取SessionFactory并创建Session,执行数据库操作。 在实际开发中,通常会创建一个SSH整合的项目结构,包括以下部分: ...
在Spring.NET配置文件中,通常会定义一个SessionFactoryBean,配置数据库连接信息、映射文件路径等,然后在需要的地方通过依赖注入获取SessionFactory实例。 接着,Spring.NET可以进一步管理NHibernate的Session...
6.8.1. 在Spring中使用AspectJ来为domain object进行依赖注入 6.8.1.1. @Configurable object的单元测试 6.8.1.2. 多application context情况下的处理 6.8.2. Spring中其他的AspectJ切面 6.8.3. 使用Spring IoC来...
Struts则负责处理HTTP请求并调用业务逻辑层方法,业务逻辑层再通过Spring获取SessionFactory来执行数据库操作。 在实际项目中,开发者需要正确配置这些依赖和文件,确保Hibernate能够正常工作。使用Maven或Gradle等...
在Hibernate中,SessionFactory是持久化会话的主要工厂对象,而getCurrentSession()方法则提供了一种便捷的方式来获取当前线程绑定的Session实例。这个方法在很多情况下被推荐使用,因为它可以自动处理事务的开启、...
- 创建数据源,指定数据源配置文件`applicationContext.xml`,并将数据源Bean(通常名为`dataSource`)配置到Spring中。 - 配置SessionFactory,指定Spring配置文件和SessionFactory ID,如`sessionFactory`,让...
但在Spring中,我们使用`LocalSessionFactoryBean`作为FactoryBean,它负责根据配置文件创建SessionFactory。`LocalSessionFactoryBean`允许我们更灵活地配置SessionFactory,比如可以从JNDI获取数据源,或者通过...
在Spring中,声明式事务管理使得事务管理与业务逻辑分离,通过在方法上添加`@Transactional`注解来开启事务。事务的传播行为、隔离级别、回滚规则等可以在配置文件或注解中设置。这种方式降低了代码的复杂度,提高了...