T - type of the result objectpublic interface Transaction<T>
HibernateUtil.executeTransaction(Transaction), often as anonymous classes within a method
implementation.
Examples:
// Example with id as result
String myDataId = HibernateUtil.executeTransaction(new Transaction<String>() {
@Override
public String execute(Session session) {
MyData myData = new MyData();
myData.setTitle("new title");
[...]
myData.performCreate(admin);
return myData.getId();
}
});
// Example with domain object as result
MyData myData = HibernateUtil.executeTransaction(new Transaction<MyData>() {
@Override
public MyData execute(Session session) {
MyData myData = new MyData();
myData.setTitle("new title");
[...]
myData.performCreate(admin);
return myData;
}
});
// Example with collection of domain objects as result
List<MyData> myDataList = HibernateUtil.executeTransaction(new Transaction<List<MyData>>() {
@Override
public List<MyData> execute(Session session) {
Criteria criteria = HibernateUtil.getSession().createCriteria(MyData.class);
criteria.add(Restrictions.ilike("title", "%title%"));
return criteria.list();
}
});
// Example with no result
HibernateUtil.executeTransaction(new Transaction() {
@Override
public Void execute(Session session) {
Member member = voterMembers.get(index);
VoteManager.getInstance().performVote(article, member, true);
article.trackReader(member);
return null;
}
});
| Modifier and Type | Method and Description |
|---|---|
T |
execute(org.hibernate.Session session)
Gets called by
HibernateUtil.executeTransaction(Transaction) with an active Hibernate Session. |
T execute(org.hibernate.Session session)
HibernateUtil.executeTransaction(Transaction) with an active Hibernate Session. Does not need to care about activating or
closing the Session, or handling transactions.
Allows for returning a result object created within this method, i.e. a domain object or a collection of domain objects. A
TransactionException can be thrown when there is any Exception: It gets propagated to the caller of the
HibernateUtil.executeTransaction(Transaction).session - session passed by the HibernateUtil.executeTransaction(Transaction)HibernateUtil#executeTransaction(Transaction)}Copyright © 2001-2017 Jalios SA. All Rights Reserved.