Java 如何扩展Eclipse';s重命名重构以在重构完成后触发另一个重构
我试图扩展eclipse的重命名重构,以调用另一个重命名重构Java 如何扩展Eclipse';s重命名重构以在重构完成后触发另一个重构,java,eclipse,refactoring,rename,ltk,Java,Eclipse,Refactoring,Rename,Ltk,我试图扩展eclipse的重命名重构,以调用另一个重命名重构 public class Person { ... } public class PersonDAO { public List<Person> getPersonByName(String name) { ... } } 公共类人物{ ... } 公共类个人 公共列表getPersonByName(字符串名称){ ... } } 在将类Perso
public class Person {
...
}
public class PersonDAO {
public List<Person> getPersonByName(String name) {
...
}
}
公共类人物{
...
}
公共类个人
公共列表getPersonByName(字符串名称){
...
}
}
在将类Person重命名为User之后,我希望像getPersonByName
这样的方法被重命名为getUserByName
我已经扩展了RenameParticipant,并尝试通过使用JDT rename重构和ASTRewrite来实现
问题是我创建的更改与原始重命名重构更改冲突。我无法使用
postCreateChange
(基本处理器似乎只返回null),现在我被卡住了
非常感谢您的帮助。通过重构,无法更改方法中由新值“User”定义的字符串“Person” 但是您可以使用Ctrl+H在整个工作区中搜索所需的字符串,并用新值替换它 当您单击“替换”按钮时,Eclipse将询问将替换插入字符串的新值。更好的建议: 1) 使用Hibernate。然后,您将使用Criteria API,不需要冗余地指定“Person”,并且可以以模块化的方式附加其他限制/条件,这对列表/搜索页面非常有用 2) 调用API getByName()。List people=personDao.getPersonByName(“…”)已经有点重复了
整个过程看起来有点像我在以前的项目中看到的DAO、数据库访问或持久化的“错误方式”。过于冗长、僵化和低实用性的标准组合让我想起了手动编写的持久性或服务在90年代中期做得很糟糕。您的更改与最初的重命名重构更改有什么冲突?