📄 contextconnectionpool.java
字号:
package jodd.db.pool;
import java.sql.Connection;
import java.sql.SQLException;
import javax.naming.Context;
import javax.naming.InitialContext;
import javax.naming.NamingException;
import javax.sql.DataSource;
/**
* Tomcat4 alike connection pools that uses Context for initilization.
*/
public class ContextConnectionPool implements ConnectionPool {
// ---------------------------------------------------------------- pool properties
private String envContextName;
public void setEnvContextName(String s) {
envContextName = s;
}
private String dataSourceName;
public void setDataSourceName(String s) {
dataSourceName = s;
}
// ---------------------------------------------------------------- init/close
private DataSource ds;
public void init() throws SQLException {
try {
Context initContext = new InitialContext();
Context envContext = (Context) initContext.lookup(envContextName);
ds = (DataSource) envContext.lookup(dataSourceName);
} catch (NamingException ne) {
throw new SQLException("Context can not be found: " + envContextName + ", " + dataSourceName);
}
}
public void close() {
}
// ---------------------------------------------------------------- get/free
public Connection getConnection() throws SQLException {
return ds.getConnection();
}
/**
* Return connection to connection pool
*
* @param conn database connection
*/
public void freeConnection(Connection conn) {
try {
if (conn != null) {
conn.close();
}
} catch (SQLException e) {
}
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -