在PL / SQL(或许多其他语言)中,我可以具有从过程返回的IN OUT或OUT参数。如何在Java中实现类似的目的?
我知道这个窍门:
public void method(String in, String[] inOut, String[] inOut2) {
inOut[0] = in;
}
其中in
参数表示IN参数,并且inOut
参数可以包含返回值。约定String[] inOut
是的数组inOut.length == 1
。
有点笨拙。
编辑对答案的反馈 :其他技巧包括:
有谁知道实现这一目标的更好方法?我需要通用解决方案的原因是因为我想在数据库模式中从PL / SQL生成便捷源代码。
我的问题是:为什么不method
退货 ?而不是设置输入/输出参数?
但是假设您 绝对肯定 要有一个in / out参数,这是一个完全不同的问题,那么数组技巧就可以了。另外,它也不少笨拙,但另一种方法是传入对象引用:
public class Foo {
private String value;
public Foo(String v) {
this.value = v;
}
public String getValue() {
return this.value;
}
public void setValue(String v) {
this.value = v;
}
}
// ....
public void method(String in, Foo inOut) {
inOut.setValue(in);
}
(或者,当然,只是value
公开。)看到了吗?我说这还不算笨。
但是我会再问:不能method
退货吗?而且,如果需要返回多个事物,是否不能返回具有这些事物属性的对象实例?
离题: 这是我真正喜欢C#方法的领域之一。反对输入/输出参数的参数之一是,在 调用 函数时它们不清楚。因此,C#通过在函数的声明 和
调用时都指定关键字来使您更清楚。在没有这种语法帮助的情况下,我将避免“模拟”输入/输出参数。
postgresql 11中有一个存储过程: 它工作得很完美,但我无法从java代码中调用它:-( 我有postgresql 11和java 8我试过两个postgres jdbc驱动org.postgresql: postgresql: 42.2.5和postgresql: postgresql:9.1-901-1.jdbc4结果是一样的 当我使用 Java抛出:org.postgresql.u
问题内容: 我正在开发一个项目,该项目正在创建一个类来运行http客户端请求(我的类充当客户端)。它接受一个url和一个请求方法(GET,POST,PUT等),我希望能够解析该URL并根据它是https还是http打开HttpsURLConnection或HttpURLConnection(假定给定的url始终是正确)。 如果我执行以下操作: 然后,这将自动创建一个可以同时接受http和https
问题内容: 有什么方法可以创建 查询参数 以在JavaScript中执行 GET请求 吗? 就像在Python中一样,它具有一个字典(或两个元组的列表)并创建一个类似的字符串。 问题答案: 干得好: 用法:
问题内容: 在PHP手册中,为了显示具有可选参数的函数的语法,它们在每组相关的可选参数周围使用方括号。例如,对于该功能,手册内容如下: 哪里是可选参数,当留空时,默认为函数的返回值。 在PHP中定义自定义函数时,如何创建像这样的可选参数? 问题答案: 与手册非常相似,在参数的定义中使用等号():
所以lv在“v”或“v”后面会有一个“_”,在那之后会有一个整数,比如“_v1”,“_v2”,所以在结尾会是一个整数,但不是任何整数,它应该是整数a。谢谢!
问题内容: 我正在尝试将oracle过程调用的out参数强制转换为对象。它不起作用,因为-就我所知- 我需要定义一个映射,告诉该方法如何投射它。如果地图是空的或未正确填充,则默认为STRUCT类型的Objekt-在我的情况下这是错误的。 我建立了一个示例,该示例应说明该问题: 由于地图错误,我无法使用以下方式: 我应该如何填写地图? 编辑1 oracle数据库中的条目无法更改。我只被允许使用它们。