替换序列化数据中的类名

2024-04-09

我想在序列化数据流中将字符串“com.oldpackage.className”替换为“com.newPackage.className”。该序列化数据从数据库中读取并在替换字符串后更新。

我在做同样的事情时遇到了一些问题。如果您已经猜到了,这是重构练习的一部分。是否有任何库可以帮助我操作序列化数据?如果您还可以评论任何预防措施或警告,这将会有很大的帮助。

多谢, 克里斯。 P.S:旧类和新类都没有将序列化版本 ID 声明为其字段的一部分。


我不知道如何做你正在尝试的事情,但我可以建议你“合法”的解决方案。实现在类路径中同时具有旧包和新包的转换器,并执行以下操作:从 DB 读取数据,使用旧包对其进行反序列化,在 java 中将旧实例转换为新实例,然后再次将新数据存储在 DB 中。

该解决方案需要执行一些肮脏的工作,但它是安全的。此外,结果可以在将来重复使用。但我祝您好运,找到仅替换序列化数据中的类名的解决方案。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

替换序列化数据中的类名 的相关文章

  • 如何消除 Java BoxLayout 中的间距?

    I programmed following ListPanel 使用 JavaScriptBoxLayout public class ListPanel extends JPanel private ArrayList
  • Amazon Elasticache Redis 集群 - 无法获取端点

    我需要获取 Amazon Elasticache 中 Redis 集群的终端节点 以下代码适用于 Memcached 集群 但不适用于 Redis import com amazonaws auth AWSCredentials impor
  • 在 Eclipse 中隐藏重复的工具栏项

    我不知道如何 但我的 STS 有重复的工具栏项目 我不知道如何删除它们 这是我复制的工具栏的样子 我想摆脱这些 我试图隐藏工具栏 但这没有帮助 有人知道如何删除重复的吗 自从升级到 Oxygen 以来 我一直遇到同样的问题 我无法可靠地重现
  • 如何抑制 Cucumber/Junit 断言堆栈跟踪

    我有一个黄瓜场景 该步骤使用assertEquals 我的结果报告显示了对最终用户不友好的堆栈跟踪 我怎样才能抑制它 Scenario Add two numbers Given I have two inputs 3 and 2 When
  • 使用 Eclipse 将具有外部依赖项的 Java 项目导出到 jar

    有没有一种简单的方法可以将 Java 项目 包括其所有外部依赖项 导出到标准 jar 文件 我开发了一个使用多个 Apache 库的 SDK 我希望能够将该项目作为单个 jar 发布 到目前为止我找到的这个问题的答案要求将项目打包为 Run
  • Java HashMap 嵌套泛型与通配符

    我正在尝试创建包含自定义类的不同子类的哈希集的哈希映射值的哈希映射 如下所示 HashMap
  • 按位运算符简单地翻转整数中的所有位?

    我必须翻转整数的二进制表示形式中的所有位 鉴于 10101 输出应该是 01010 当与整数一起使用时 完成此操作的按位运算符是什么 例如 如果我正在编写类似的方法int flipBits int n 什么会进入身体 我只需要翻转数字中已经
  • 无法将 INode 类型值分配给 类型变量。为什么?

    我想知道为什么以下代码无法工作 public static
  • 为什么这个动作不抽象? [关闭]

    Closed 这个问题是无法重现或由拼写错误引起 help closed questions 目前不接受答案 我很难理解为什么一个类中的一个操作是抽象的 而另一个类中的操作不是 源代码1 编译时出错 https gyazo com cd3c
  • 生产者程序中的 kafka 网络处理器错误(ArrayIndexOutOfBoundsException:18)

    我有下面的 kafka Producer Api 程序 我对 kafka 本身是新手 下面的代码从 API 之一获取数据并将消息发送到 kafka 主题 package kafka Demo import java util Propert
  • JPA 的 Hibernate 查询提示

    我一直在尝试为所有可以通过设置的提示找到一个明确的资源Query setHint String Object JPA 中的方法调用 但我一无所获 有人知道一个好的参考吗 See 3 4 1 7 查询提示 http docs jboss or
  • EJB 中 @Stateless 相对于 @Singleton 的真正用例是什么

    如果我正确理解EJB Singleton实际上与普通Java中的Singleton相同 也是spring中的单例 gt 一个实例 每个调用同时通过同一个实例 Stateless 声明一个 bean 它可以 但不得 具有多个实例 但限制是一个
  • 单元测试、集成测试还是设计中的问题?

    我编写了我的第一个单元测试 我认为它过于依赖其他模块 我不确定是否是因为 这是一个复杂的测试 我实际上已经编写了集成测试或 我的设计有问题 我首先要说的是 虽然我有大约 4 年的开发经验 但我从未学过 也没有人教过自动化测试 我刚刚使用 H
  • 如何加载图像文件到ImageView?

    我试图在从文件选择器中选择图像文件后立即显示该图像文件 文件选择器仅限于 png 和 jpg 文件 所选文件存储在文件类型的变量中 为此 我设置了一个 ImageView 我希望用这个新文件设置图像 唯一的问题是它的类型是文件而不是图像 如
  • java中的第三个布尔状态是什么?

    虽然我知道根据定义 布尔值仅包含两种状态 真或假 我想知道布尔值在用这些状态之一初始化之前有什么值 它默认为 false http java sun com docs books tutorial java nutsandbolts dat
  • Java给定长度的随机数

    我需要在 Java 中生成一个恰好 6 位数字的随机数 我知道我可以在随机发生器上循环 6 次 但是在标准 Java SE 中还有其他方法可以做到这一点吗 要生成 6 位数字 Use Random http download oracle
  • 动态创建 JSON 对象

    我正在尝试使用以下格式创建 JSON 对象 tableID 1 price 53 payment cash quantity 3 products ID 1 quantity 1 ID 3 quantity 2 我知道如何使用 JSONOb
  • 测量 tomcat 的排队请求数

    因此 使用tomcat 您可以设置acceptCount值 默认为100 这意味着当所有工作线程都忙时 新连接被放置在队列中 直到队列满 之后它们被拒绝 我想要的是监视此队列中项目的大小 但无法确定是否有办法通过 JMX 获取此值 即不是队
  • 检查 Java 字符串实例是否可能包含垃圾邮件数据的最简单方法

    我有一个迭代 String 实例的过程 每次迭代对 String 实例执行很少的操作 最后 String 实例被持久化 现在 我想为每次迭代添加一个检查 String 实例是否可能是垃圾邮件的检查 我只需验证 String 实例不是 成人材
  • 如何让JComboBox中的内容居中显示?

    目前我有这个JComboBox 我怎样才能将其中的内容居中 String strs new String 15158133110 15158133124 15158133458 JComboBox com new JComboBox str

随机推荐

  • 内部类和外部成员的访问

    我一直认为内部类可以访问其外部类中的所有数据 但有代码 template
  • 如何获取二维列表中的每个第一个元素

    我有一个这样的列表 a 4 0 4 4 0 3 0 3 3 6 3 5 6 4 8 我想要这样的结果 EVERY列表中的第一个元素 4 0 3 0 3 5 I tried a 1 0 但它不起作用 就可以得到索引了 0 来自列表理解中的每个
  • 如果我在 onResume 中调用 getMeasuredWidth() 或 getWidth() 进行布局,它们将返回 0

    如果我在 onResume 中调用 getMeasuredWidth 或 getWidth 进行布局 它们将返回 0 我认为此时此刻还没有绘制出该视图 另外 我认为我需要将 getMeasuredWidth 或 getWidth 放入绘制布
  • 使用 MingW 64 绕过 fork() 的最佳方法?

    我浏览了十几个关于 Windows 没有的链接fork 以及应该如何使用CreateProcess or CreateThread试图解决这个问题 但是不允许时间和风险来重写一大段遗留代码 有没有一种快速 简单的方法来获取fork在 Win
  • Ruby 中 as_json 和 to_json 方法的区别

    两种方法有什么区别as json and to json 它们相同吗 如果不是的话它们之间有什么区别 to json返回字符串 as json返回带有字符串键的哈希值 gt name gt Konata Izumi age gt 16 1
  • 实体框架 - 首先反向工程代码 - 覆盖更改

    我使用 EF Power Tools 来反向工程现有的数据库 这可以 在 EDMX 数据库第一条路线下 我将为任何覆盖 例如数据注释 创建部分类 例如这里 账期是原始的 EntityObject MetadataType typeof Le
  • 如何 grep grep 返回的文件内容?

    当我使用以下命令查找带有错误消息的日志文件时grep error log 它返回日志文件列表 grep error log Binary file out0080 2011 01 07 12 38 log matches Binary fi
  • 检查调用和未调用时 Mockk 验证失败

    我正在尝试使用以下命令验证是否未调用函数 verify managementService deleteUser any wasNot Called 该验证失败并显示以下消息 验证失败 调用第 1 个 共 1 个 ManagementSer
  • OpenCV:imread给出CV_8UC3,无法转换为CV_8UC4?

    需要有关我尝试使用 OpenCV 加载和转换的图像的帮助 这是我的代码 templ imread Template bmp 1 cout lt lt templ before convert lt
  • 没有 RTTI 的情况下编译 c++ 什么时候会出现问题?

    我正在使用 gcc fno rtti标志在没有运行时类型信息的情况下编译我的 C 假设我没有使用dynamic cast lt gt or typeid 有什么可能导致我以后出现问题吗 由于您的问题特定于 GCC 您应该仔细查阅您正在使用的
  • 将管理证书与 azure REST API 一起使用

    我在我的应用程序中使用 azure 服务管理 REST API 我在azure上上传了管理证书 并在本地有一份副本 我将认证保存在应用程序本身的单独文件夹 AzureCertificate 中并引用该位置 例如 字符串证书路径 Server
  • Rails + PostgreSQL - 使用 Like

    我有以下两个疑问 SELECT users FROM users WHERE fname lname LIKE james SELECT users FROM users WHERE fname lname LIKE James 我在用户表
  • Mongoose Schema.update 不更新布尔值

    我尝试过更新其他字段 效果很好 我在 API 中使用的命令 User update email targetUser email set isAdmin true push log updated new Date function err
  • 如何在 Android 应用程序中访问 graph.windows.net Microsoft Azure Graph API?

    我已要求 IT 管理员添加一个名为EmployeeId以 Azure Active Directory 的目录扩展的形式 与我们的现场 AD 同步 当给定用户登录我的 Android 应用程序时 我试图检索该值 我已经关注了this htt
  • Cloud9 Watir/Selenium 测试

    我已经为一个简单的持续集成和交付系统设置了 Cloud9 和 Codeship 它非常适合开发我的网站 应用程序 有没有人能够在 Cloud9 IDE 中开发和运行基于浏览器的 Cucumber 测试 如果是这样 需要什么样的设置 附言 我
  • IIS6 ASP.NET 2.0 应用程序缓存 - 大量数据的数据存储选项和性能

    在 ASP NET 2 0 站点中IIS6我想将键 值对存储在应用程序缓存中 每个键始终是一个长度为 5 个字符的字符串 每个值都是一个长度为 15 250 个字符的字符串 使用场景是 每个网页请求都会查询一次缓存 如果键存在 则使用值 否
  • 如何重命名我的 asp.net 网页

    我的页面名称为 XYZ aspx 现在我想更改ABC aspx我应该怎么做 当我直接从解决方案资源管理器更改它时 它给了我一个错误 谁可以帮我这个事 谢谢 Smartdev ASP NET 文件通常由 1 3 个文件组成 具体取决于项目类型
  • iText5.1.0在文档中设置页眉和页脚[关闭]

    很难说出这里问的是什么 这个问题是含糊的 模糊的 不完整的 过于宽泛的或修辞性的 无法以目前的形式得到合理的回答 如需帮助澄清此问题以便重新打开 访问帮助中心 help reopen questions 我正在使用 servlet 来查看
  • 无需 MSI 文件即可卸载

    我经常遇到 Windows Installer 尝试卸载软件包的问题 但它抱怨 您尝试使用的功能所在的网络资源不可用 当原始 MSI 根本不可用时 是否有已知的方法可以卸载此类软件包 请注意 微软现在已经发布了一个官方工具来解决这些问题 并
  • 替换序列化数据中的类名

    我想在序列化数据流中将字符串 com oldpackage className 替换为 com newPackage className 该序列化数据从数据库中读取并在替换字符串后更新 我在做同样的事情时遇到了一些问题 如果您已经猜到了 这