stsivaraj (8) [Avatar] Offline
#1
Team,
I need a clarification about session performance. I have created session pool(LocalSessionFactoryBean). I mean for each thread request I am getting a session(not created new one) from pool. For each request(from controller to serviceImpl), I am getting a session and once request is completed I just close the session. In this case, I feel session(currentSession and close session) is cause of performance issue for following ways. Please suggest me, which way is best in this situation.

#WAY 1:
=======
TestController.java
-------------------------
for (String sdgCode : sdgCodes) {
//For each sdgCode, I am calling serviceImpl
// As per my knowledge, We are getting a session / close the session for each service request
for (Feature sdgFeature : planService.getSharedDataGroupsFeature(sdgCode)) {

}
}

#WAY 2:
=======
TestController.java
------------------------
//One serviceImpl request and get the all feature objects
//Only one session will play the role here. Only one time close the session.
List<Feature> features = planService. getSharedDataGroupsFeatures(sdgCodes);
for (Feature sdgFeature : features ){

}

Conclusion : Is it performance issue for each time getting the session from session pool and close the session for each request once request has been completed? Please suggest me…