Привет всем. Мы разрабатываем приложение в Struts2-Spring-JPA. В этом приложении мы используем sessions.xml и persistence.xml для управления сеансами Oracle DB.() метод, мы инициализируем переменную serverSession.
здесь я прикрепил коды, которые мы используем в проекте.
В конструкторе Impl
serverSession=getSession();
и в методах выполнения процедур
</p>
<pre><code> try {
createConnection(serverSession);
/* call stored procudure */
StoredProcedureCall call = new StoredProcedureCall();
call.setProcedureName("ORACLE_USP");
call.addNamedArgumentValue("ARG1", value);
call.addNamedOutputArgument("OUTPUTVAL", "P_OUTPUTVAL", Integer.class);
ValueReadQuery query = new ValueReadQuery();
query.setCall(call);
actionplanforum_id = (Integer) serverSession.executeQuery(query);
} catch (DatabaseException e) {
LOGGER.error("DatabaseException" + e);
} finally {
releaseJTSCon(serverSession);
}
protected ServerSession getSession() throws Exception {
ServerSession sSession = (ServerSession) SessionManager.getManager().getSession("dbsession");
if (!sSession.isConnected()) {
sSession.connect();
}
return sSession;
}
public void createConnection(ServerSession sSession) {
if (!sSession.isLoggedIn()) {
sSession.login();
}
}
protected void releaseJTSCon(ServerSession sSession) {
try {
sSession.releaseJTSConnection();
}catch (DatabaseException e) {
LOGGER.error("Error in releasing DB connection resources");
}
Является ли это правильным подходом без использования EntityManger, при использовании этого подхода, когда приходит больше трафика?у меня много ораторских соединений, открытых в оракуле (в основном на холостом ходу).
Может ли кто-нибудь помочь в реализации правильного подхода.