[英]Error creating bean in Spring
大家好,我是春天的初學者,我才剛開始。 我遇到錯誤
“使用類路徑資源[org / collection / ApplicationContext2.xml]中定義的名稱'question'創建bean時出錯:指定了3個構造函數參數,但在bean'question'中找不到匹配的構造函數(提示:為簡單起見,請指定index / type / name參數參數以避免類型歧義)
我有兩個類,第一個是Question,其中包含一個構造函數Question,第二個類是Answer
我正在嘗試創建答案類的引用並將其插入具有數組列表的Question類
我瞥了一眼,發現我需要指定類型。 我已經指定了它,但是仍然出現錯誤
謝謝..
Question.java
package org.collection;
import java.awt.List;
import java.util.ArrayList;
import java.util.HashSet;
import java.util.Iterator;
public class Question {
private int id;
private String name;
private ArrayList<String> answers;
//private HashSet<String> answers1;
public Question()
{
//Default constructor
}
public Question(int id,String name,ArrayList<String> answers)
{
super();
this.id=id;
this.name=name;
this.answers=answers;
}
public void display()
{
System.out.println("Id :"+id+"\nName :"+name);
System.out.println("Answers are");
Iterator<String> itr= answers.iterator();
while(itr.hasNext())
{
System.out.println(itr.next());
}
/*System.out.println("----------picking up the answers from HashSet---------");
Iterator<String> itr1=answers1.iterator();
while(itr1.hasNext())
{
System.out.println(itr1.next());
}
System.out.println("-------reached-----------");*/
}
}
Answer.java
package org.collection;
public class Answer {
private int id;
private String name;
private String by;
public Answer() {
// TODO Auto-generated constructor stub
}
public Answer(int id,String name,String by)
{
super();
this.id=id;
this.name=name;
this.by=by;
}
public String toString()
{
return "ID :"+id+"\nName"+name+"\nBy :"+by;
}
}
ApplicationContext.xml2
<?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-3.0.xsd"> <bean id="ans1" class="org.collection.Answer"> <constructor-arg value="1" type="int"></constructor-arg> <constructor-arg value="java is a progamming language hahahaha" type="java.lang.String"></constructor-arg> <constructor-arg value ="varun" type="java.lang.String"> </constructor-arg> </bean> <bean id ="ans2" class="org.collection.Answer"> <constructor-arg value="2" type="int"></constructor-arg> <constructor-arg value="java is a platfornm" type="java.lang.String"></constructor-arg> <constructor-arg value ="Rahul" type="java.lang.String"></constructor-arg> </bean> <bean id="question" class= "org.collection.Question"> <constructor-arg value="111" type="int"></constructor-arg> <constructor-arg value="What is java ?" type="java.lang.String"></constructor-arg> <constructor-arg> <list> <ref bean="ans1"/> <ref bean="ans2"/> </list> </constructor-arg> </bean> </beans>
Question
的三個參數構造函數期望使用String
List
。 但是,您正在傳遞Answer
List
。 將Question
類中的第三個參數更改為ArrayList<Answer> answers
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.