通过Java增强,可以在表单增加、修改、删除、查询时,实现额外的功能,类似Spring中的AOP编程。提供了开始事件、结束事件,如下所示:
其中:
spring-bean:表示SpringBean的名称,如:类上面添加注解@Component("saveTestEnhanceDemo")
,则spring-bean值为saveTestEnhanceDemo
;
java-class:表示Java类全名(包含包名),如:net.maku.online.form.enhance.demo.SaveTestEnhanceDemo
新增Java增强
新增Java增强,需要实现SaveAndUpdateEnhanceInter接口,如下所示:
@Slf4j
@Component("saveTestEnhanceDemo")
public class SaveTestEnhanceDemo implements SaveAndUpdateEnhanceInter {
@Override
public void execute(String tableId, Map<String, Object> data) {
log.info("SaveTestEnhanceDemo.execute() 方法被调用");
log.info("参数:{{}}", data);
}
}
支持配置开始事件和结束事件,也就在进入和离开新增方法时,会执行该Java增强,配置如下:
修改Java增强
修改Java增强,需要实现SaveAndUpdateEnhanceInter接口,如下所示:
@Slf4j
@Component("updateTestEnhanceDemo")
public class UpdateTestEnhanceDemo implements SaveAndUpdateEnhanceInter {
@Override
public void execute(String tableId, Map<String, Object> data) {
log.info("UpdateTestEnhanceDemo.execute() 方法被调用");
log.info("参数:{{}}", data);
}
}
这里配置开始事件,也就是在进入修改方法之前,会执行该Java增强,配置如下:
删除Java增强
删除Java增强,需要实现DeleteEnhanceInter接口,如下所示:
@Slf4j
@Component("deleteTestEnhanceDemo")
public class DeleteTestEnhanceDemo implements DeleteEnhanceInter {
@Override
public void execute(String tableId, List<Long> idList) {
log.info("DeleteTestEnhanceDemo.execute() 方法被调用");
log.info("参数:{{}}", idList);
}
}
这里配置开始事件,也就是在进入删除方法之前,会执行该Java增强,配置如下:
查询Java增强
查询Java增强,需要实现QueryEnhanceInter接口,如下所示:
@Slf4j
@Component("queryTestEnhanceDemo")
public class QueryTestEnhanceDemo implements QueryEnhanceInter {
@Override
public void execute(String tableId, OnlineFormQuery query) {
log.info("QueryTestEnhanceDemo.execute() 方法被调用");
log.info("参数:{{}}", query);
}
}
查询只有开始事情,也就是在进入查询方法之前,会执行该Java增强,配置如下: