Trong khi the aspectj way công trình, tôi muốn nói vào mùa xuân/cách ngủ đông giữa các ý kiến đăng ký một LoadEventListener (đọc thêm trong hibernate core reference, các spring reference và this thread)
đây là một ảnh từ định nghĩa mùa xuân đậu sessionfactory
<bean id="mySessionFactory"
class="org.springframework.orm.hibernate3.LocalSessionFactoryBean">
...
<property name="eventListeners">
<map>
<entry key="post-load">
<bean class="com.foo.spring.MyLoadListener"></bean>
</entry>
</map>
</property>
</bean>
và đây là LoadEventListener:
public class MyLoadListener implements LoadEventListener{
public void setSpringManagedProperty(String springManagedProperty){
this.springManagedProperty = springManagedProperty;
}
private String springManagedProperty;
@Override
public void onLoad(LoadEvent event, LoadType loadType) throws HibernateException{
if(MyEntity.class.getName().equals(event.getEntityClassName())){
MyEntity entity = (MyEntity) event.getInstanceToLoad();
entity.setMyCustomProperty(springManagedProperty);
}
}
}
Hãy nhìn mẹ, không cần thiết.
Nguồn
2010-08-19 08:18:08