不要使用 JAX-RPC Holder 数据类型

此规则会标记对下列项的引用: javax.xml.rpc.holders 打包。 JAX-RPC 软件包为每种数据类型都提供了单独的持有者类 ( IntHolder , StringHolder , DoubleHolder 等等)。 有了 JAX-WS,现在就有了一个新的单个 Holder 类,该类可 参数化( Holder<String> , Holder<Int> 等等)。

JAX-RPC 示例

importjavax.xml.rpc.holders.IntHolder;
importjavax.xml.rpc.holders.StringHolder;
    
公共类 Demo {

public voiddemoHolder(StringHoldertext,IntHoldercount) throws java.rmi.RemoteException{
      text.value="test";
      count.value=1;
     }
}

JAX-WS 示例

importjavax.xml.ws.Holder;
    
公共类 Demo {

public voiddemoHolder(Holder) 文本,持有人 count) 抛出java.rmi.RemoteException{
      text.value="test";
      count.value=1;
     }
}

在上面的示例中,你可以看到现在只有一个软件包需要导入 javax.xml.ws.Holder (而不是 javax.xml.rpc.holders.IntHolder javax.xml.rpc.holders.StringHolder ).另一个不同之处在于demoHolder方法的参数;而不是 StringHolder text, IntHolder count 现在您只能调用 Holder<String> text, Holder<Integer> count .