工作需要,昨天開始學習Xfire,方便是感到很方便,但是對于他的默認綁定配置,始終有些模糊,尤其是List以及數組相關的。今天謝了一個關于返回List的具體調用測試,應該算比較全了,大家共享。
業務假設是根據billno,查詢數據庫,得到ResultSet結果,然后將ResultSet包裝成List返回。
server端:
public interface IgetInfo {
//每一條記錄作為一個String[],存放與List中
public List <String[]> getListOfStringArrays(String billno);
//每一條記錄合并為一個String,存放與List中
public List <String> getListOfString(String billno);
//已String[]的形式只返回一條記錄
public String[] getStringArrays(String billno);
//和第一個方法類似,只是將String[]改成List
public List <List> getListOfList(String billno);
}
具體實現類就不寫了,相應的IgetInfo.aegis.xml如下:
<?xml version= "1.0 " encoding= "UTF-8 "?>
<mappings>
<mapping >
<method name= "getListOfStringArrays ">
<!--注意,此處的componentType我試過各種類型,均不行,不知道為何
用String報造型錯誤-->
<return-type componentType= "java.lang.String "/>
</method>
<method name= "getListOfString ">
<return-type componentType= "java.lang.String "/>
</method>
<method name= "getStringArrays ">
<return-type componentType= "java.lang.String "/>
</method>
<method name= "getListOfList ">
<return-type componentType= "#someArrays "/>
</method>
<component name= "someArrays "
class= "java.util.List "
componentType= "java.lang.String " />
</mapping>
</mappings>
client調用就不寫了,也很簡單。奇怪的就是第一種List <String[]> 返回類型。感覺上應該這么寫
<method name= "XXX ">
<return-type componentType= "#YYY "/>
</method>
<component name= "YYY "
class= "java.util.Arrays "
componentType= "java.lang.String " />
但仍然出錯。誰給指教一下?
業務假設是根據billno,查詢數據庫,得到ResultSet結果,然后將ResultSet包裝成List返回。
server端:
public interface IgetInfo {
//每一條記錄作為一個String[],存放與List中
public List <String[]> getListOfStringArrays(String billno);
//每一條記錄合并為一個String,存放與List中
public List <String> getListOfString(String billno);
//已String[]的形式只返回一條記錄
public String[] getStringArrays(String billno);
//和第一個方法類似,只是將String[]改成List
public List <List> getListOfList(String billno);
}
具體實現類就不寫了,相應的IgetInfo.aegis.xml如下:
<?xml version= "1.0 " encoding= "UTF-8 "?>
<mappings>
<mapping >
<method name= "getListOfStringArrays ">
<!--注意,此處的componentType我試過各種類型,均不行,不知道為何
用String報造型錯誤-->
<return-type componentType= "java.lang.String "/>
</method>
<method name= "getListOfString ">
<return-type componentType= "java.lang.String "/>
</method>
<method name= "getStringArrays ">
<return-type componentType= "java.lang.String "/>
</method>
<method name= "getListOfList ">
<return-type componentType= "#someArrays "/>
</method>
<component name= "someArrays "
class= "java.util.List "
componentType= "java.lang.String " />
</mapping>
</mappings>
client調用就不寫了,也很簡單。奇怪的就是第一種List <String[]> 返回類型。感覺上應該這么寫
<method name= "XXX ">
<return-type componentType= "#YYY "/>
</method>
<component name= "YYY "
class= "java.util.Arrays "
componentType= "java.lang.String " />
但仍然出錯。誰給指教一下?