java - 框架如何调用 javabean 上的 get 和 set 方法?

标签 java javabeans

如果你有一个带有 getFoo 方法的 bean,当你请求 ?这是使用反射 API 完成的吗?还是以某种方式使用注释来完成?显然我知道如何在给定属性名称的情况下派生方法,我只是不知道如何调用该方法。

最佳答案

Java 按照方法名称约定使用“属性”。对于 T 类型的属性 camelCase,您应该定义 public T getCamelCase()public void setCamelCase(T t )。您可以使用以下代码测试 bean 的属性:

Introspector.getBeanInfo (bean.getClass ()).getPropertyDescriptors ();

请注意,由于属性不是一流的对象并且依赖于命名约定,因此很容易意外破坏此类伪属性。例如。如果您定义了 setFoo(int)setFoo(int, boolean),您的类中将没有属性 foo

关于java - 框架如何调用 javabean 上的 get 和 set 方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2985280/

相关文章:

java - 在 gradle 中包含 javafx.util.Pair 作为依赖项

java - 为 TypedQuery 指定的类型与其自身不兼容

java - Java String .matches() 的奇怪输出

java - 为什么我无法从 PriorityQueue 中删除通过 peek() 获取的元素?

java - 添加元素时集合的属性更改事件旧值

java - JSP 中的 Bean 序列化

java - 在 Java 中创建类数组(而不是对象)?

Java 接口(interface)使用指南——接口(interface)中的 getter 和 setter 是否不好?

java - 如何在 Spring 中强制属性文件中的属性?

java - CDI @Produces Javadoc 需求解释