java函数返回值,不通过返回值获取函数的处理结果,怎么实现

一个web项目,用的springstruts2框架,dao层的这函数返回值为int,上层却能通过此函数获得game的List,按我的思维这个应该返回List<gamePO... 一个web项目,用的spring struts2框架,dao层的这函数返回值为int,上层却能通过此函数获得game的List,按我的思维这个应该返回List<gamePOJO>才合适啊,把我这个初学者惊呆了,代码如下,求大神指点迷津,

---------------------开始-------------------------------

//加载用户游戏
public int loadUserGames(UserPOJO userPOJO) {
StoredProcedureUtil sp = storedProcedure("pkg_manager.loadUserGames");//

sp.addParameter("userId", java.sql.Types.INTEGER, userPOJO.getUserId());
sp.addOutParameter("resultCode", java.sql.Types.INTEGER);
sp.addOutCursorParameter("result", GamePOJO.class);
Map<?, ?> result = sp.execute();
int resultCode = (Integer) result.get("resultCode");
userPOJO.setGameList((List<GamePOJO>) result.get("result")); //-----------------mark 1
return resultCode;
}
----------------------------结束---------------------------------------------------

补充说明:
//sp 是封装类spring jdbc/dao 的链接数据操作相关实例
//pkg_manager.loadUserGames 是plsql中的包和函数
//声明为loadUserrGames(n_oper_id in number, n_ret_code out number,
cur_result out sys_refcursor)

其他部分的说明

1、下面是userPOJO的属性 getter setter部分已删除

public class UserPOJO {
private int userId;
private String gameName;
private String password;
private String nickName;// 别名
private Date createTime;
private String createTimeStr;
private Date lastLoginTime;
private String lastLoginIp;
private int loginCount;
private List<GamePOJO> gameList; //------------------mark

}
2、需要其他说明或者是代码可留言
3、在线等的,,哭了,,,,,,
展开
 我来答
WM_THU
推荐于2016-11-25 · TA获得超过7164个赞
知道大有可为答主
回答量:4285
采纳率:80%
帮助的人:3947万
展开全部
userPOJO.setGameList(...)

是这里修改了参数userPOJO,估计是修改了gameList这个field。

Java传参机制,对于所有的Object,是传的引用。所以在函数内修改userPOJO对象的成员,在函数外是可以看到的。
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式