调用 firePropertyChange() 的 setter 的 Eclipse 模板
对于 MVC 模型类,我的 setter 如下所示:
enum BoundProperty {FIELD_NAME, ...}
private Type fieldName;
public setFieldName(Type newValue) {
Type oldValue = fieldName;
fieldName = newValue;
firePropertyChange(BoundProperty.FIELD_NAME, oldValue, newValue);
}
给定一个字段,可以从自动生成的 setter 生成此输出吗?如果没有,有没有办法从模板中获取此输出?
输出应使用 CamelCase 字段名称来生成方法名称,因此 fieldName 生成 setFieldName() 并将字段名称大写以生成属性枚举。
因此 fieldName 会生成 FIELD_NAME
(或者 FIELDNAME
也可以)。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
我认为没有一种直接的方法可以通过 Eclipse 模板来实现这一点,主要涉及camelCase/upperCase 和枚举值的生成。您可以检查这两个问题有没有办法在 Eclipse (Helios) 代码模板中将变量值的第一个字母大写, 以编程方式添加代码模板?以深入了解更多详细信息。
恕我直言,实现您想要的效果的最佳方法是使用 Fast Code Eclipse 插件 并编写一个该插件的速度模板,可从字段生成所有代码。
或者更改该插件的"getter_setter"模板。
I think there is not a straightforward way to make this through Eclipse templates, mainly regarding the camelCase/upperCase and generation of enum values. You can check these two questions Is there a way to capitalize the first letter of a value of a variable in Eclipse (Helios) code templates, Programmatically add code templates? to dig into further details.
IMHO, the best way to achieve what you want is to use the Fast Code Eclipse Plugin and write a velocity template for that plugin that generates all the code from the fields.
Or change the "getter_setter" template of that plugin.
我可以在“生成 getter/setter”对话框中看到此消息。
可以在“代码模板”首选项页面上配置 getter/setter 的格式。您可以前往那里(
Code
部分下的Setter Body
)并修改如下。然而,它不会生成
BoundProperty
。需要更多的研究来确定是否可能。这些链接可能会帮助有用的 Eclipse Java 代码模板
Eclipse 代码模板入门
I can see this message on "Generate getters/setters" dialog.
The format of the getters/setters may be configured on the Code Templates preference page. You can go there (
Setter Body
underCode
section) and modify like below.However it is not going to generate
BoundProperty
though. It need more research to find out if it is possible or not. These links may helpUseful Eclipse Java Code Templates and
Getting started with Eclipse code templates
Fast Code Eclipse Plugin 看起来像是一个选项,但我在安装它时遇到了错误,但我没有这样做没有时间追问用户qualidafial对问题有用的 Eclipse Java 代码模板 可以完成我需要做的一切,而不需要 Eclipse 插件。
The Fast Code Eclipse Plugin looks like an option, but I got an error installing it which I don't have time to chase and the answer offered by user qualidafial on the question Useful Eclipse Java Code Templates does everything I need to do without requiring an Eclipse plugin.