spring - Using session in old Petclinic example -
i'm experimenting old petclinic illustration , noticed vets arraylist in simplejdbcclinic exists life of session. seems should exist request since don't see annotations putting session context. point out i'm failing understand?
here vets class: @xmlrootelement public class vets {
private list<vet> vets; @xmlelement public list<vet> getvetlist() { if (vets == null) { vets = new arraylist<vet>(); } homecoming vets; } } the service:
@service @managedresource("petclinic:type=clinic") public class simplejdbcclinic implements clinic, simplejdbcclinicmbean { private simplejdbctemplate simplejdbctemplate; private simplejdbcinsert insertowner; private simplejdbcinsert insertpet; private simplejdbcinsert insertvisit; private final list<vet> vets = new arraylist<vet>(); : : @transactional(readonly = true) public collection<vet> getvets() throws dataaccessexception { synchronized (this.vets) { if (this.vets.isempty()) { refreshvetscache(); } homecoming this.vets; } } } the controller mapping:
@requestmapping("/vets") public modelmap vetshandler() { vets vets = new vets(); vets.getvetlist().addall(this.clinic.getvets()); homecoming new modelmap(vets); } once vets list created survives multiple requests.
thanks
i think avoids redundant database calls storing vets in private final list<vet> vets. vets variable property of singleton @service simplejdbcclinic
spring spring-mvc
No comments:
Post a Comment