jakarta-ee - CDI 的静态实用方法 (Weld JEE6)

标签 jakarta-ee java-ee-6 cdi jboss-weld weld

我在实用程序类中有一个简单的旧式静态方法。由于每次都需要参数化对象,我正在努力“CDI”它。.关于如何最好地解决这个问题,有任何帮助吗?

即我想将实用程序类注入(inject)到多个类中,并在需要时调用下面的方法(和类似的方法)...实用程序类每次都会使用正确的参数依次注入(inject) ByteArrayInputStream、ObjectInputStream...

旧类:

public class Utils {


      public static Object fromByteArray(final byte[] data) throws IOException, ClassNotFoundException {

                final ByteArrayInputStream b = new ByteArrayInputStream(data);
                final ObjectInputStream o = new ObjectInputStream(b);
                return o.readObject();
      }


      public static byte[] toByteArray(final MyObj tx)  throws IOException{
                final ByteArrayOutputStream b = new ByteArrayOutputStream();
                final ObjectOutputStream o = new ObjectOutputStream(b);
                o.writeObject(tx);
                return b.toByteArray();
      }

}

谢谢...

最佳答案

有多种方法可以实现这一点。两种可能性:

只需在 bean 的方法/构造函数中使用它即可:

Object object = Utils.fromByteArray(...);

注入(inject):

@Inject
private Utils utils;

您根本不需要修改您的类Utils

关于jakarta-ee - CDI 的静态实用方法 (Weld JEE6),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16274989/

相关文章:

jakarta-ee - Jersey SSE Eventoutput 写入不会发送到客户端,除非关闭

java - 如何使用 HttpResponse 检查响应正文是 SOAP 消息还是 XML 消息或 XSD 文档还是 WSDL 文档

序列号的 JPA 映射错误

servlets - 带有安全过滤器和依赖注入(inject)的 jax-rs 1.1,如何实现这一点?

java - @ApplicationScoped 在集群中

java - DDD 中的聚合对象

java - 一对一聊天 Atmosphere 框架

java - 如何将http请求发送到另一个servlet

java - 周围调用 : Curious name?

java - 在 Java 中,是否可以使用资源路径获取 WAR 类路径中的目录文件列表?