请联系我们

Spring数据源的灵活配置巧应用

来源: 框架 Spring |  作者: ITeduer |  发布: 2008-5-08 00:00


三、写获取数据库工具类

package com.lavasoft.dbtest;

import org.apache.commons.logging.Log;

import org.apache.commons.logging.LogFactory;

import javax.sql.DataSource;

import java.sql.Connection;

import java.sql.SQLException;

import java.sql.CallableStatement;

/**

* Created by IntelliJ IDEA.

* File: DBUtil.java

* User: leizhimin

* Date: 2008-2-21 14:26:30

* 数据库工具

*/

public final class DBUtil {

private static final Log log = LogFactory.getLog(DBUtil.class);

/**

* 获取系统的数据源

*

* @return DataSource

*/

public static DataSource getDataSource() {

DataSource dataSource = null;

try {

dataSource = (DataSource) ContextHelper.getContext().getBean("rptds");

} catch (Exception e) {

log.error("获取数据源出错,请检查Spring数据源配置!");

}

return dataSource;

}

/**

* 获取数据库连接

*

* @return Connection

*/

public static Connection makeConnection() {

Connection conn = null;

try {

conn = getDataSource().getConnection();

} catch (SQLException e) {

log.error("通过数据源获取数据库连接发生异常!");

e.printStackTrace();

}

return conn;

}

/**

* 执行没有参数的SQL过程

*

* @param procedureName 存储过程名字

* @return boolean 返回存储过程执行的结果,true表示执行成功,false表示执行失败.

*/

public static boolean executeBSDProcedure(String procedureName) {

boolean flag = false;

String sqlStr = "{call " + procedureName + "()}";

CallableStatement cs;

Connection conn = makeConnection();

try {

cs = (CallableStatement) conn.prepareStatement(sqlStr);

cs.executeUpdate(sqlStr);

flag = true;

} catch (SQLException e) {

log.error("调用存储过程" + sqlStr + "失败!");

e.printStackTrace();

}

return flag;

}

}


* 部分内容来源于网络,版权属原作者所有,转载请注明来源。
打印 | 收藏此页 |  推荐给好友 | 举报