当前位置: 首页 > 知识库问答 >
问题:

使用http://www.springframework.org/schema/p获取404

公西英叡
2023-03-14

还有别的方法可以得到这个xmlns:p吗?以下是我的尝试:

XML:

<?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://www.springframework.org/schema/beans"
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xmlns:p="http://www.springframework.org/schema/p"
   xsi:schemaLocation="
    http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd">
<bean id="testPNamespace" class="org.learning.exemples.PNamespaceTest"
    p:value ="10">
</bean>

类:

package org.learning.exemples;

public class PNamespaceTest {

    private final String value;

    public PNamespaceTest(String value) {
        this.value = value;
    }

    public String getValue() {
        return value;
    }
}

IDE错误消息:

属性P:此处不允许值

共有1个答案

仲孙兴平
2023-03-14

您需要在org.learning.examples.pnamespacetest中同时拥有getter和setter,才能在XML中使用p:value=“somevalue”。所以只要加上

public void setValue(String value) {
    this.value = value;
}

也可以使用xmlns:c=“http://www.springframework.org/schema/c”这是constructor-arg的快捷方式

<?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://www.springframework.org/schema/beans"
   xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
   xmlns:p="http://www.springframework.org/schema/p"
   xmlns:c="http://www.springframework.org/schema/c"
   xsi:schemaLocation="
    http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd">
<bean id="testPNamespace" class="org.learning.exemples.PNamespaceTest"
    c:value ="10">
</bean>
 类似资料: