gpt4 book ai didi

java - Java 中的类可以克隆吗?

转载 作者:行者123 更新时间:2023-12-01 09:59:43 26 4
gpt4 key购买 nike

我当前的 Web 服务器配置中有这个整体 JAR。整个系统的绘制方式是你不能有单独的网络应用程序,一切都围绕这个大 jar 运行。

在解决这个问题的过程中,我试图从原始安全包(我有源代码)中取出sso身份验证,我正在处理的问题与Usuario类有关。

据我了解,从 tokenid 获取属性后,原始类将设置“usuario”属性

usuario = ssoUtil.getAtributosUsuario(tokenId);

httpSession.setAttribute("usuario", usuario);
httpServletRequest.setAttribute("usuario", usuario);

我将 Usuario 类更改为 UsuarioSSO,并将整个身份验证事物实现为全局服务器过滤器 - 因为项目的要求是,未经身份验证就不可能在服务器上发布任何内容。

实际的 Usuario 类 - 被设置的类 - 只是一堆私有(private)变量、getter、setter 和两个方法,以及 Serialized 和 HttpSessionBindingListener 类的实现。

当原始 INTL 问题中的任何类尝试从 httpSession 获取 Usuario 属性时,就会出现问题:

java.lang.ClassCastException: pathToClass.UsuarioSSO cannot be cast to intlPathToClass.Usuario

我想要实现的目标是让这个 Actor 阵容发挥作用。但似乎不可能感到沮丧,即使你两个类(class)都是相同的。

仅供引用,我可以随意更改 INTL Usuario 类,但我无法更改实际使用该类的代码,如果我可以将对 INTL Usuario 的所有引用更改为 UsuarioSSO,一切都会正常工作。

有什么建议吗?

最佳答案

我同意埃里克森的评论。您可以将类移至单独的 jar 中。您仍然可以保留原始包名称。

两个 jar 可以使用相同的包名称。唯一奇怪的是这些包是否具有相同的类。但如果你移动 Usuario 类,这应该是一个问题。

关于java - Java 中的类可以克隆吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36899712/

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