juedi的gravatar头像
juedi 2014-09-15 11:22:25

java webservice参数与返回值不固定的方法如何发布?

有如下的一个方法,如何发布成一个webservice,可以方便的让客户端调用,或者在这个方法之上如何封装,发布成一个方便使用,可维护的webservice?
/**
 * 执行算法
 * @param arithmeticId 算法Id,指定要调用的算法
 * @param marameterMap 参数map,键-参数名,值-参数值(参数值可能有int,String……)
 * @return 算法的执行结果(可能是单个值,可能是数组,也可能是对象List)
 */
public Object calaculate(String arithmeticId, Map<String, Object> marameterMap){
//1.根据算法ID找到算法的公式
//2.将参数代入运行得到结果
//3.返回运行结果

return null;
}

所有回答列表(5)
fei3l的gravatar头像
fei3l  LV2 2014年9月15日

算法实现可以做成一个简单工厂,Webservice仅做数据传输,具体使用哪个算法通过arithmeticId调用具体算法实现类。

评论(10) 最佳答案
core888的gravatar头像
core888 2014年9月15日

使用json

等发达省份的gravatar头像
等发达省份  LV3 2014年9月15日

xml或json

linapex的gravatar头像
linapex  LV14 2014年9月16日

NB不够。

咖啡加糖609的gravatar头像
咖啡加糖609  LV11 2014年9月16日

可以这样,先用map去去做结果,最后返回的时候做成json格式的字符串,比如

 

map.put("result","执行结果")map.put("data","返回数据,可以是map,list,string等等"),最后做成一个json字符串,出来的结果就是

{

  "result" : "ok",

  "data" : {}

}

都是这样的格式~~~~

顶部 客服 微信二维码 底部
>扫描二维码关注最代码为好友扫描二维码关注最代码为好友