读书人

Hiberanate的拦截器跟监听事件

发布时间: 2012-11-06 14:07:00 作者: rapoo

Hiberanate的拦截器和监听事件

创建监听类: SaveOrUpdateListener

public classSaveOrUpdateListener extends DefaultSaveOrUpdateEventListener {       @Override       public voidonSaveOrUpdate(SaveOrUpdateEvent event) {              // TODO Auto-generated method stub              System.out.println("保存前执行");    //判断是否对用户表进行操作if(event.getObject() instanceof entity.UserInfo){              UserInfo user=(UserInfo)event.getObject();       super.onSaveOrUpdate(event);     //执行后续操作       }              System.out.println("保存后执行");       }}

同时需要在hibernate.cfg.xml文件中进行配置监听的事件:

//放在.xml文件底部

<eventtype="save-update">

<listenerclass="listener.SaveOrUpdateListener"/>

</event>

命名查询:

需要在数据映射元文件中进行配置,如:

<query name=“getUserByGender”>

<![CDATA[from UserInfo wheregender=:gender]]>

</query>

在JAVA代码中的实现,如:

Query q=session.getNamedQuery(“getUserByGender”);

q.setString(“gender”,”男”);

读书人网 >Web前端

热点推荐