gpt4 book ai didi

java - JSP页面如何找到正确的参数 setter

转载 作者:行者123 更新时间:2023-11-30 05:18:19 25 4
gpt4 key购买 nike

假设我有以下 JSP 页面:

<jsp:useBean id="bean" scope="page" class="com.test.jsp.beans.TestBean"/>
<jsp:setProperty name="bean" property="*"/>
...
<input type="text" name="test" value="test value"/>
...

和 bean :

package com.test.jsp.beans;

public class TestBean {
public String test;

public String getTest() {
return test;
}

public void setTest(String test) {
this.test = test;
}
}

java如何知道传递<input>中的值标记为setTest()方法?

我想了解它们如何链接的内部工作原理,我假设使用了反射。

java是寻找setter方法还是寻找变量?

是否需要设置setter名称 + <input>姓名?

setter 是否需要只包含一个参数?

该参数是否需要与<input>同名标签?

setter 是否需要参数?

大小写重要吗?

等等...

最佳答案

有一个package java.beans在官方 API 中。

尝试分析 bean 类的工具的起点是 Introspector class具有 getBeanInfo 方法,其类文档指出:

If we don't find explicit BeanInfo on a class, we use low-level reflection to study the methods of the class and apply standard design patterns to identify property accessors, event sources, or public methods. We then proceed to analyze the class's superclass and add in the information from it (and possibly on up the superclass chain).

它清楚地表明(公共(public))方法很重要。

PropertyDescriptor class比较包的元信息,它提供属性的元信息,以及返回 Reflection Method 类实例的 getReadMethod()getWriteMethod() .

属性访问器方法的模式在 the Bean Specification 的第 7 章和 8.3 章中描述。 ,但您已经表现出了解基础知识。有了 java.beans 包的知识,您可以通过提供显式的 BeanInfo 实现来集成偏离标准模式的类。

关于java - JSP页面如何找到正确的参数 setter ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59984749/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com