gpt4 book ai didi

java - 修改远程 EJB 方法中的参数

转载 作者:行者123 更新时间:2023-11-30 03:46:05 25 4
gpt4 key购买 nike

有很多文章描述了如何不对 EJB 方法参数的修改传递给调用者。我通常通过将参数返回给调用者来解决此问题,以便可以将其重新分配给变量。

我的问题是,没有一篇文章似乎描述了我应该在更复杂的方法中做什么,在这些方法中我需要对参数进行修改并返回一些值。我可以制作某种包装类,其中包含每个参数的属性和实际返回值并返回包装器,但这对我来说似乎非常笨拙。有更好的方法来实现这一点吗?

最佳答案

没有其他办法。

想象一下以下方法:

Result doSomething(A arg1, B arg2, C arg3) { 
...
}

因为您使用远程连接调用 EJB,所以客户端将序列化 arg1arg2arg3。此时,它们是全新的实例,例如 arg1'arg2'arg3'

它们甚至可能不在同一个 JVM 上,如果是,您不应该依赖它(某些 EJB 容器在确定调用者和被调用者位于同一个 JVM 中时使用引用)。

返回结果,更新这些argN'是唯一的方法:

Result doSomething(A arg1, B arg2, C arg3) {
...
return new Result(arg1, arg2, arg3);
}

然后容器将序列化 Resultarg1'arg2'arg3',以及调用者将收到包含 arg1"arg2"arg3"Result'

关于java - 修改远程 EJB 方法中的参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25659359/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com