Autowised及Resource失效(类序列化后被调用的情况)
- Autowised及Resource失效
- activiti
环境
- springboot
- spring data jpa
- activiti 5.22
流程图配置
某个service task需要调用某个方法进行流转,而在调用的方法中会调用持久层方法,但是此方法的调用是在流程加载的时候将该类序列化进数据库中,在该类中不管是autowise还是resource注解还是new dao对象都木有用,所以要以静态的方法调用
@Component
public class ApplyUtil
{
public static ApplyUtil applyUtil;
@Autowired
private ApplyDAO applyDAO;
@Autowired
private ApplyProcessDAO applyProcessDAO;
@Autowired
private ApiFeignClient apiFeignClient;
@PostConstruct
public void init()
{
applyUtil = this;
}
public static Apply saveApply(Apply apply)
{
return applyUtil.applyDAO.saveAndFlush(apply);
}
}
然后在被序列化的类中直接用工具类的形式调用就OK了
PS:备忘