context.xml الربيع وSet.contains ()
سؤال
والربيع: في بلدي context.xml، ولدي:
<util:set id="someIDs"
set-class="java.util.HashSet"
value-type="java.lang.String">
<value>"W000000001"</value>
<value>"W000000003"</value>
<value>"W000000009"</value>
</util:set>
في بلدي الفول جافا، والتنفيذ:
private Set<String> someSet =
ComUtilities.uncheckedCast(getApplicationContext()
.getBean("someIDs"));
boolean found = someSet.contains("W000000009");
وبعد إعدام avobe كتلة التعليمات البرمجية، وجدت جدا كاذبة بغرابة! كيف ذلك؟ أي اقتراح / الفكرة؟ بفضل حفنة.
المحلول
ومن على قمة رأسي - أنا متأكد من أن الربيع لا يحتاج إلى التنصيص على بيانات سلسلة. لذلك من المحتمل إدخال تلك السلاسل في خريطة مع علامتي اقتباس مزدوجتين الفعلية في بداية ونهاية.
وحاول التحقق
boolean found = someSet.contains("\"W000000009\"");
لمعرفة ما إذا كان هذا هو الحال.
نصائح أخرى
واعتقد انها لأنك نقلت القيم في التكوين الربيع ثم يحتوي على الاختيار تبحث عن سلسلة غير المسعرة. تحل محل لكم الربيع التكوين مع هذا:
<util:set id="someIDs"
set-class="java.util.HashSet"
value-type="java.lang.String">
<value>W000000001</value>
<value>W000000003</value>
<value>W000000009</value>
لا تنتمي إلى StackOverflow