我需要的是在代码中找到所有获取某些实体(A,B,C,D,E ..)的方法,如调用(findBy,fetchUnique ..等),但不要清除会话,所以所有代码都以findBy,fetchUnique开头,而不是清除会话。
所以我有这个正则表达式如下:
\w*(A|B|C|D|E|F|G|H|I).*(?=\.findBy)((?s)(?!\.clear\())
它不起作用,欢迎提出任何建议。
更新:按要求添加更多详细信息
假设我有以下方法:
public Long test(){
A a = dao.findByKey(key);
....//use a here
....
....
return xyz;
}
这应该匹配,因为通过调用dao.clear(a)不能清除对象a但是下面的方法不匹配
public Long test(){
A a = dao.findByKey(key);
....//use a here
....
....
dao.clear(a);
return xyz;
}
因为此处a已从会话中清除。
答案 0 :(得分:1)