日期:2014-05-20  浏览次数:20701 次

spring+hibernate 使用SQLQuery连接了一个ORACLE数据库,现在用户退出系统,要求断开数据库连接,应该怎么写啊
显示用户所有列表:
ApplicationContext cxt = new ClassPathXmlApplicationContext("applicationContext.xml");
SessionFactory sf = (SessionFactory)cxt.getBean("sessionFactory");
Session session = sf.openSession();
Transaction tx =session.beginTransaction();
SQLQuery sqlQuery = session.createSQLQuery("select TNAME from tab where tabtype='TABLE'");
List tables = sqlQuery.list();
tx.commit();
return tables;

applicationContext.xml文件
<bean id="configBean" class="org.springframework.beans.factory.config.PropertyOverrideConfigurer">
<property name="location">
<value>classpath:datasource.properties</value>
</property>
</bean>

  <bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource"
  destroy-method="close" >
  <property name="driverClassName">
  <value>oracle.jdbc.driver.OracleDriver</value>
  </property>
  <property name="url">
  <value>jdbc\:oracle\:thin\:@127.0.0.1\:1521\:orcl</value>
  </property>
  <property name="username">
  <value>scott</value>
  </property>
  <property name="password">
  <value>123456</value>
  </property>
   
  </bean>

另外还有一个datasource.properties文件,里面包含了数据库的连接信息,用于给spring动态链接数据库。
不知道断开数据库连接的代码应该怎么写。求解 谢谢各位
初来乍到 分不多哈

------解决方案--------------------
如果你用了 spring 和 hibernate 其实根本不用操心这个问题,只要按照正规的配置来, 每个DAO层只需要些你的业务逻辑代码就可以,,框架会帮你自动提交事务和关闭连接,,
------解决方案--------------------
探讨
如果你用了 spring 和 hibernate 其实根本不用操心这个问题,只要按照正规的配置来, 每个DAO层只需要些你的业务逻辑代码就可以,,框架会帮你自动提交事务和关闭连接,,

------解决方案--------------------
当一个用户登陆时,可以先把这个用户信息存入session中 如:
session.put(Constant.COMMON_SESSION, user);

当用户 退出时 就清掉这个用户信息 如:
session.remove("user");

在登陆一个用户时 同上面 就行了 就不会出现还是第一个用户的信息了!