通过序列化在应用程序之间传输 Java 类

2024-01-02

我已经成功序列化了class Ghost:

class Ghost {}

File file = new File("serialized.class.bin");
ObjectOutputStream oos = new ObjectOutputStream(new FileOutputStream(file));
oos.writeObject(Ghost.class);

然后我试图恢复它不同的应用:

InputStream is = new FileInputStream(new File("serialized.class.bin"));
ObjectInputStream ois = new ObjectInputStream(is);
Object o = ois.readObject();

我在(尝试)加载类时收到错误消息:

java.lang.ClassNotFoundException: Ghost

我可能无法访问Ghost.class反序列化类时的文件。是否可以通过这种方式传递Java类?

UPD。我假设在序列化类时正在转储类定义(字节码)。我错了。目标可以通过以下方式实现getResourceAsStream() http://docs.oracle.com/javase/6/docs/api/java/lang/ClassLoader.html#getSystemResourceAsStream%28java.lang.String%29虽然。


序列化一个Classobject 只是存储对类名的引用,它实际上并不存储类字节码(嗯,它比实践中稍微复杂一些,但效果是相同的)。在反序列化时ObjectInputStream将尝试从其自己的类加载器中按名称加载类,因此该类需要已经可以通过该类加载器访问。

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

通过序列化在应用程序之间传输 Java 类 的相关文章

  • 使用 Guice 注入类集合

    我正在尝试用 Google Guice 2 0 注入东西 我有以下结构 FooAction implements Action BarAction implements Action 然后我有一个带有以下构造函数的 ActionLibrar
  • 如何从 Play WSClient 的字符串创建 WSResponse 对象

    文档 https www playframework com documentation 2 4 x JavaTestingWebServiceClients Mock the web service建议使用模拟Web服务测试基于WSCli
  • 如果列名不同,则一对多休眠连接

    我有三个具有以下结构的表 合同 gt Contract id 主要 customer company id Vendor company id 公司 gt Company id 主要 创建日期 创建者 Company Timeline gt
  • 如何将 JSpinner 的值设置为特定日期

    我有一个JSpinner我添加到JPanel我想将其时间设置为 GregorianCalendar calendar JSpinner spinner new JSpinner spinner setModel model pom add
  • Quarkus 不以编程方式选择 bean

    我试图以编程方式选择 bean 但 quarkus 不会注入 bean 并引发异常 不支持吗 public enum ReportType ONE TWO Qualifier Retention RUNTIME Target METHOD
  • Java 读取大文本文件时出现 OutOfMemoryError

    我是 Java 新手 正在读取非常大的文件 需要一些帮助来理解问题并解决它 我们有一些遗留代码 必须对其进行优化才能正常运行 文件大小仅在 10mb 到 10gb 之间变化 只有当文件开始大小超过 800mb 时才会出现启动问题 Input
  • 尝试获取屏幕上绘制的每个随机圆圈的 x、y 坐标

    您好 我正在制作一款游戏 该游戏将在屏幕上创建随机圆圈 随机创建的圆圈的值为红色或绿色 我的问题是 我希望不仅能够确定用户何时单击其中一个圆圈 而且还能够确定他们最终单击的圆圈 红色或绿色 下面是我的代码 我的主要问题是试图找到将要绘制的圆
  • 如何将现有的 SQLite3 数据库导入 Room?

    好吧 我在桌面上使用 SQLite3 创建了一个只需要读取的某些信息的数据库 我正在制作的应用程序不需要在此表中插入或删除信息 我在 Room 数据库层上做了相当多的谷歌搜索 所有文档都需要在构建应用程序时在 Room 中创建一个新的数据库
  • Android WebView文件上传

    我正在开发一个 Android 应用程序 基本上它是一个WebView和一个进度条 Facebook 的移动网站 m facebook com 已加载到WebView 当我单击 选择文件 按钮上传图像时 没有任何反应 我已经尝试了所有的解决
  • 使用 JAX-WS 的 WebLogic 中没有模式导入的单个 WSDL

    如何使用 JAX WS 配置由 WebLogic 10 3 6 生成的 Web 服务 以将对象架构包含在单个 WSDL 文件声明 而不是导入声明 中 示例代码 界面 import javax ejb Local Local public i
  • Android volley使用RequestFuture.get()时出现超时异常

    在我的片段中 我尝试使用 TMDB 的开放电影数据库来获取有关 正在播放 电影的详细信息 如果我使用 RequestFuture get time TimeUnit 方法来执行此齐射请求 我总是会收到超时错误 如果我在 Safari 中手动
  • LocalDate 减去 period 得到错误的结果

    LocalDate减去一个Period 如 28年1个月27天 得到错误的结果 但减去一个Period 只有天单位 如 10282 天 得到正确的结果 有什么需要注意的吗 public static void main String arg
  • 是否有最新的 Facebook Java SDK? [关闭]

    Closed 这个问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 好像没找到最近更新的 如果没有 是否有一个好的 Java 库来执行与 Facebook 的 API 交
  • 多线程——更快的方法?

    我有一堂有吸气剂的课程getInt 和一个二传手setInt 在某个领域 比如说领域 Integer Int 一个类的一个对象 比如说SomeClass The setInt 这里是同步的 getInt isn t 我正在更新的值Int来自
  • 改变 Java 中凯撒移位的方向

    用户可以通过选择 1 向左或 2 向右移动字母来选择向左或向右移动 左边工作正常 右边不行 现在它显示了完全相同的循环 但我已经改变了所有 and 以不同的方式进行标记 最终我总是得到奇怪的字符 如何让程序将字符向相反方向移动 如果用户输入
  • JAXB 编组器无参数默认构造函数

    我想从 java 库中编组一个 java 对象 当使用 JAXB marschaller 编组 java 对象时 我遇到了一个问题 A 类没有无参数默认构造函数 我使用Java Decompiler来检查类的实现 它是这样的 public
  • Android项目中使用java获取电脑的IP地址

    我在用ksoap2 android http code google com p ksoap2 android 我需要使用java获取IP地址 这样我就不必每次都手动输入它 我所说的 IP 地址是指 例如 如果我这样做ipconfig使用命
  • JPA 将 BigDecimal 作为整数保存在数据库中

    我在数据库中有这个字段 ITEMCOST NUMERIC 13 DEFAULT 0 NOT NULL 在JAVA中 Entity中的字段定义如下 Column name ITEMCOST private BigDecimal itemCos
  • 如何将库添加到 LIBGDX 项目的依赖项 gradle

    一切都在问题中 我已经尝试了在 SO 和其他网站中找到的所有答案 但没有运气 这就是我迄今为止尝试过的 adding compile fileTree dir lib include jar 到我的 build gradle adding
  • 将数组值导出到 csv 文件 java

    我只需要帮助将数组元素导出到 csv 文件 我不知道我的代码有什么问题 任何帮助将不胜感激 谢谢 for int index 0 index lt cols length index FileWriter fw new FileWriter

随机推荐

  • 在Python中打印字符串会在字符串之前打印“u”吗?

    打印列表中元素之前的 u 我没有在代码中输入 u hobbies prompt user three times for hobbies for i in range 3 hobby raw input Enter a hobby hobb
  • 使用 IDE 运行 Spring-boot 的 main

    我有一个 spring boot 应用程序需要 可作为 Servlet 容器中的战争进行部署 可通过 mvn spring boot run 运行 我还希望能够通过右键单击 IDE Eclipse 或 IntelliJ IDEA Commu
  • NSFilePresenter 方法永远不会被调用

    我正在尝试编写一个简单的 玩具 程序 它使用 NSFilePresenter 和 NSFileCoordinator 方法来监视文件的更改 该程序由一个加载 硬编码 文本文件的文本视图和一个用于保存文件更改的按钮组成 我的想法是 我有两个实
  • 在 Windows Mobile 应用程序中播放 YouTube 视频

    我正在开发一个用于 Windows Mobile 6 或可能 5 的应用程序 用于播放 YouTube 视频 嗯 它should播放 YouTube 视频 并控制 查询播放器的状态变化 当前帧 时间等 在网上搜索了相当长一段时间 以及一些尝
  • Hibernate 验证器中的自定义消息密钥不适用于 message.property

    我正在研究 Spring Boot 我使用 Hibernate Validator 来验证我的 bean 我添加了一个自定义键 NotEmpty注释 并在 message properties 中添加键 值对 但它没有从 message p
  • Laravel 4:如何向 DB::table 添加范围?

    使用 Eloquent 模型添加范围很容易 public function scopeMyScope query Do stuff to that query 但如何添加范围DB table 我使用此查询来获取页面浏览量 views DB
  • 如何在 Dart 中只替换字符串中的一个字符?

    我试图仅替换字符串 dart 中的一个字符 但找不到任何有效的方法 由于字符串不是 Dart 中的数组 我无法通过索引直接访问字符 并且没有内置函数可以做到这一点 这样做的有效方法是什么 目前我正在这样做 如下所示 List
  • 对话框过渡效果

    I am currently working on the transition effects for my dialog Please refer to the image below 我的对话框的入口动画应该是从上到中 而退出动画应该
  • 重写 LINQ 扩展方法

    有没有一种方法可以覆盖扩展方法 提供更好的实现 而无需显式转换为它们 我正在实现一种数据类型 它能够比默认扩展方法更有效地处理某些操作 但我想保留 IEnumerable 的通用性 这样任何 IEnumerable 都可以传递 但是当我的类
  • 如何将脚本添加到 jqgrid 行上的自定义按钮?

    我正在尝试处理 jqgrid 中自定义按钮的点击 我显示了按钮 但是当单击它们时 我的函数不会运行 如果我单击 jqgrid 外部的按钮 脚本就会运行 jqgrid会消耗按钮点击吗 不确定我缺少什么或不理解什么 这是网格 我没有重新加载整个
  • 更改 NSTableView 的边框颜色

    我可以改变颜色吗NSTableView s border 指针处的灰线 谢谢 你需要子类化你的NSScrollView NSScrollView通常不进行任何绘图 并且可能以这种方式与其子视图进行奇怪的交互 我建议放一些类似的东西 void
  • 通过 JSON/AJAX 更新 HTML

    自从我听说 JSON 以来 我一直在我的 Rails 应用程序中使用 JSON 来处理 AJAX 功能 因为使用 RJS 渲染 HTML 感觉 错误 因为它违反了 MVC 我从事的第一个 AJAX 密集型项目最终有 20 30 个控制器操作
  • 通过 Perl 和 Net::OpenID::Consumer 对 Google Apps 进行 OpenID 身份验证失败

    我在 Google 的应用程序集成支持论坛上提出了这个问题 但得到的回复为零 也许这里有人可以帮助引导我走向正确的方向 我正在尝试将 Perl 应用程序与 Google Apps 集成 但在 OpenID 身份验证方面遇到了一些问题 我一直
  • 如何将 C String 转换为 NSString?

    我已经能够找到类似的方法 NSString stringWithCString encoding 但当 cstring 是指针时 它们似乎表现不佳 首先 不要使用initWithCString 它已被弃用 有几种方法可以做到这一点 cons
  • Documentum Rest 服务 - 信任来自 Java 客户端的 SSL 证书

    我的需要是接受来自独立 Java 应用程序 将捆绑为 JAR 的 REST Web 服务 URL https dctm rest 上启用的 SSL 证书 据我所知 最好的方法是使用 Keytool 创建 KeyStore TrustStor
  • 如何将 dask 数据帧保存到与 dask 调度程序/工作人员相同的机器上的镶木地板?

    我试图通过 Dask Dataframe 保存到与 dask 调度程序 工作人员所在的同一台机器上的镶木地板 然而 我在这期间遇到了麻烦 我的 Dask 设置 我的 python 脚本在本地计算机 笔记本电脑 16 GB RAM 上执行 但
  • 从日志文件中解析 json 对象

    我想从日志文件中解析 JSON 对象 为了使用 JSON Parser 我的完整文件必须采用 JSON 格式 但我的情况并非如此 有什么方法可以逐行解析文件并获取 JSON 对象 以下是我的日志文件格式 2015 10 19 11 24 3
  • 具有高级安全性的 Windows 防火墙中的命令行 IP 阻止/取消阻止

    我希望能够以编程方式阻止发往某些 IP 的传出数据包 没关系应用程序 我希望能够做到这一点 我有 Windows 7 x64 Professional 因此它配备了具有高级安全性的 WindowsFirewall 它具有出站过滤功能 目前我
  • Sphinx 从自定义代码参考中删除代码格式

    我有以下课程 class A def x Do the thing class B A def x Do the thing but better than the py meth parent
  • 通过序列化在应用程序之间传输 Java 类

    我已经成功序列化了class Ghost class Ghost File file new File serialized class bin ObjectOutputStream oos new ObjectOutputStream n