세션 빈으로 구현 된 Java 웹 서비스에서 데이터베이스 연결이 필요하며 올바르게 처리하는지 잘 모르겠습니다. 나는 연결이 필요 할 때마다JDBC 연결 풀 (글래스 피쉬)의 올바른 사용
은 내가
Connection cn = null;
try
{
cn = SQLUtils.getSQLConnection();
// use connection
}
finally
{
if (null != cn)
{
try
{
cn.close();
}
catch (SQLException e)
{
}
}
}
그것은이 방법을 사용하거나 I 데이터 소스는 콩의 구성원이어야합니다 됐나요
을 클래스public final class SQLUtils {
//.....
private static DataSource m_ds=null;
static
{
try
{
InitialContext ic = new InitialContext();
m_ds = (DataSource) ic.lookup(dbName); //Connection pool and jdbc resource previously created in Glassfish , dbName contains the proper JNDI resource name
}
catch (Exception e)
{
e.printStackTrace();
m_ds = null;
}
}
public static Connection getSQLConnection() throws SQLException
{
return m_ds.getConnection();
}
}
을 만들어?
@Stateless
@WebService
public class TestBean {
private @Resource(name=dbName) DataSource m_ds;
}
유감스러운 질문이지만 유감스럽게 생각합니다. 미리 감사드립니다.
+1 내가 알지 못하는 ExceptionInInitializerError. – ewernli
그러나 나는 조롱하고 테스트하기가 더 쉽기 때문에 콩 자체에 주입하는 것을 선호합니다. – ewernli
답장을 보내 주셔서 감사합니다. – a1ex07