通过套接字发送对象

2023-12-24

我过去做过的唯一套接字编程是简单的文本流。我想知道通过套接字发送 Java 对象之类的内容的最有效方法是什么。

例如,如果我有以下 Employee 类(Dependent 将是一个由家属信息组成的简单类):

public class Employee {
    private String name;
    private double salary;
    private ArrayList<Dependent> dependents;
}

我应该使 Employee 对象可序列化并通过套接字发送实例吗?或者我应该编写一个包含员工信息的 xml 文件并将其发送?任何指导将不胜感激。或者有一些完全不同的更好的方法吗?谢谢你!


如果您仅在 Java JVM 之间发送数据,则任一选择都可以。

文本表示(XML、JSON 或自定义)有几个优点:

  • 更容易使其在 Java 和其他语言之间进行互操作
  • 面对版本更改或套接字两端的代码版本略有不同时,它的脆弱性较小
  • 测试和调试要容易得多

根据格式的不同,它可能会慢一些,但这通常并不重要。

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

通过套接字发送对象 的相关文章

  • 使用 Checkstyle Plugin 时从插件调用代码时出现问题:“org.eclipse.jface”

    我正在尝试在 Rational Software Architect 7 0 0 4 上使用 eclipse cs 插件 我最近卸载了旧的 beta2 版本并安装了 beta3 插件本身按照之前的配置工作 但是每当我尝试通过 Windows
  • 无法加载 jar 文件的主类

    我使用 Eclipse IDE 开发了一个应用程序 创建应用程序后 我以 jar 格式导出项目 当我尝试运行此 jar 文件时 出现错误 无法加载主类 请帮忙 当您将项目导出为 jar 时 请参阅此所以问题 https stackoverf
  • 使用 Spring 时实例化对象,用于测试与生产

    使用 Spring 时 应该使用 Spring 配置 xml 来实例化生产对象 并在测试时直接实例化对象 这样的理解是否正确 Eg MyMain java package org world hello import org springf
  • Java 泛型/类型调度问题

    考虑以下程序 import java util List import java util ArrayList public class TypeTest public static class TypeTestA extends Type
  • 如何确定非阻塞套接字是否真正连接?

    这个问题不仅限于Python 这是一个一般的套接字问题 我有一个非阻塞套接字 想要连接到一台可访问的机器 在另一端 该端口不存在 为什么 select 仍然成功 我预计会超时 sock send 因管道损坏而失败 select 之后如何确定
  • spring - 强制 @Autowired 字段的 cglib 代理

    我有混合堆栈 EJB 和 Spring 为了将 Spring 自动装配到 EJB 我使用SpringBeanAutowiringInterceptor 不确定这是否会影响我遇到的问题 在尝试通过以下方式自动装配 bean 时 Scope p
  • 使用 java 按电子邮件发送日历邀请

    我正在尝试使用 java 发送每封电子邮件的日历邀请 收件人收到电子邮件 但不会显示接受或拒绝的邀请 而是将该事件自动添加到他的日历中 我正在使用 ical4j jar 构建活动 邀请 private Calendar getInvite
  • 使用php将文本文件转换为xml?

    data txt ha15rs 250 home2 gif 2 ha36gs 150 home3 gif 1 ha27se 300 home4 gif 4 ha4678 200 home5 gif 5 我想使用 php 使用 simplex
  • @EnableTransactionManagement 的范围是什么?

    我试图了解正确的放置位置 EnableTransactionManagement多个 JavaConfig 上下文的情况下的注释 考虑以下场景 我在 JPAConfig java 和 AppConfig java 中有 JPA 配置以及一组
  • 尝试在没有 GatewayIntent 的情况下访问消息内容

    我希望每当我写一条打招呼的消息时 机器人都会在控制台中响应一条消息 但它只是给我一个错误 JDA MainWS ReadThread WARN JDA Attempting to access message content without
  • Install4j:如何在安装结束时执行命令行 java -jar filename.jar

    在 Intall4j 中 在安装结束时 我只想通过执行如下命令行来初始化某些内容 java jar filename jar 我怎样才能归档这个任务install4j Thanks 将 运行可执行文件或批处理文件 操作添加到 安装屏幕 并设
  • 打印包含 JBIG2 图像的 PDF

    请推荐一些库 帮助我打印包含 JBIG2 编码图像的 PDF 文件 PDFRenderer PDFBox别帮我 这些库可以打印简单的 PDF 但不能打印包含 JBIG2 图像的 PDF PDFRenderer尝试修复它 根据 PDFRedn
  • 覆盖 MATLAB 默认静态 javaclasspath 的最佳方法

    MATLAB 配置为在搜索用户可修改的动态路径之前搜索其静态 java 类路径 不幸的是 静态路径包含相当多非常旧的公共库 因此如果您尝试使用新版本 您可能最终会加载错误的实现并出现错误 例如 静态路径包含 google collectio
  • Apache Commons CLI:替代已弃用的 OptionBuilder?

    IntelliJ 显示此示例代码中不推荐使用 OptionBuilderhttp commons apache org proper commons cli usage html http commons apache org proper
  • 如何使用 Mockito 和 Junit 模拟 ZonedDateTime

    我需要模拟一个ZonedDateTime ofInstant 方法 我知道SO中有很多建议 但对于我的具体问题 到目前为止我还没有找到任何简单的解决办法 这是我的代码 public ZonedDateTime myMethodToTest
  • ExceptionHandler 不适用于 Throwable

    我们的应用程序是基于 Spring MVC 的 REST 应用程序 我正在尝试使用 ExceptionHandler 注释来处理所有错误和异常 I have ExceptionHandler Throwable class public R
  • 使用 Java 从 S3 上的文件在 S3 上创建 zip 文件

    我在 S3 上有很多文件 需要对其进行压缩 然后通过 S3 提供压缩文件 目前 我将它们从流压缩到本地文件 然后再次上传该文件 这会占用大量磁盘空间 因为每个文件大约有 3 10MB 而且我必须压缩多达 100 000 个文件 所以一个 z
  • 阻止 OSX 变音符号为所有用户禁用 Java 中的 KeyBindings?

    注 我知道这个问题 https stackoverflow com questions 40335285 java keybinds stop working after holding down a key用户必须输入终端命令才能解决此问
  • 来自客户端的超时 Web 服务调用

    我正在使用 RestEasy 客户端调用网络服务 一项要求是 如果调用运行时间超过 5 秒 则中止 超时调用 我如何使用 RestEasy 客户端实现这一目标 我只看到服务器端超时 即如果在一定时间内未完成请求 Rest Easy 网络服务
  • java中如何找到class文件的包

    我正在编写一个使用 class 文件的 java 程序 我希望能够读取文件系统上的 class 文件 使用 InputStream 并确定它所在的包 该 class 文件可能不在一个好的包目录结构中 它可能位于某个随机位置 我怎样才能做到这

随机推荐

  • Babel 7 中的外部导入不会被转译

    我目前正在将代码库从 Babel 6 迁移到 7 该代码由多个具有自己配置的单独项目组成 The main项目从以下位置导入文件external然而脚本是从导入的external by main没有被转译并且在 意外的令牌导入 上失败 脚本
  • Angular ui 选项卡,每个选项卡都有单独的控制器

    我想制作一个引导选项卡集 每个选项卡都有自己的控制器 谁能指出我应该朝哪个方向走 目前我已经制作了几个不同的控制器 我希望在选项卡集中使用它们 而不是将它们显示为不同的路线 我知道我可以通过在不同的控制器模板中将选项卡集显示为活动的给定控制
  • 如何找到最佳的模糊字符串匹配?

    蟒蛇的新的正则表达式模块 https pypi python org pypi regex支持模糊字符串匹配 大声歌颂 现在 根据文档 The ENHANCEMATCH标志进行模糊匹配尝试以提高拟合度 它找到的下一个匹配项 The BEST
  • 获取用户输入的数字列表

    我尝试使用input Py3 raw input Py2 获取数字列表 但是使用代码 numbers input print len numbers 输入 1 2 3 and 1 2 3给出的结果是7 and 5分别 它似乎将输入解释为字符
  • 在Lua中,我可以轻松地选择第N个结果而不需要自定义函数吗?

    假设我将一个字符串插入到表中 如下所示 table insert tbl mystring 然后mystring通过将所有出现的 a 替换为 b 生成input mystring string gsub input a b 将两者合并为一个
  • 使用 JSON.NET 序列化/反序列化动态属性名称

    我有以下课程 public class MyRequest public string Type get set public string Source get set 我想序列化 反序列化以下值Source来自名为值的 JSON 字段T
  • java使用excel打开csv文件

    我正在为大学做一个项目 并制作了一个创建 csv 文件的程序 我希望有一个按钮 您可以单击该按钮 然后使用 Excel 打开 csv 文件 谢谢 知道系统上安装了 MsOffice 您应该能够使用以下命令从命令行打开文档 excel myD
  • Keycloak.loadUserProfile() 上的 Keycloak 403(禁止)

    我是 Keycloak 的新手 我尝试使用以下代码获取用户信息 keycloakAuth loadUserProfile success function profile debugger console log profile error
  • InvalidOperationException:无法为“角色”创建 DbSet,因为该类型未包含在上下文的模型中

    以下解决方案在 net core 1 1中有效 但从1 1升级到2 0后 我收到以下错误 InvalidOperationException 无法为 Role 创建 DbSet 因为该类型未包含在上下文的模型中 当用户尝试登录时 执行以下语
  • 捕获谷歌应用程序引擎日志输出

    如何在管理控制台之外查看 Google App Engine 日志 我正在开发 所以使用dev appserver py 管理控制台并希望在发出记录时查看日志 我想使用标准 Unix 工具 例如 在控制台中监控日志输出 less grep
  • 查找文件中最后一次出现的字符串

    我需要从 C 中的特定字符串中获取最后一次出现的日志跟踪 例如 lines File ReadLines logPath SkipWhile line gt line Contains param Take 20 该代码可以工作 但它从日志
  • Coffeescript 中的臃肿 JS 想要返回所有内容

    我这里有这个 Coffeescript brew args gt for e in args alert e null brew fo re eo 我希望我不需要在那里放置 null 来让它工作 但可惜的是 它编译成这样 brew func
  • 比较 Pyspark 中的列

    我正在开发一个包含 n 列的 PySpark DataFrame 我有一组 m 列 m 例如 输入 PySpark DataFrame 包含 col 1 1 2 3 col 2 2 1 4 col 3 3 2 5 Ouput col 4 m
  • 如何将 git note 移动到不同的提交?

    我已经错误地记录了错误的提交 有没有一种简单的方法可以将其整体移动到不同的提交 我希望有一种方法可以在语义上将注释重新定位到不同的提交上 但是无论什么是最简单的都会很高兴知道 我怀疑最简单的选择是使用桌面剪贴板复制粘贴文本 可能最简单的方法
  • 等宽窗扇

    我的应用程序有一个带有两个孩子的 SashForm 我希望在调整窗口大小时左孩子保持相同的大小 我想要 Eclipse 对 Package Explorer 和主编辑器做同样的事情 当您调整窗口大小时 只有文本编辑器会更改大小 但是 Pac
  • Django 子查询和带有 OuterRef 的注释

    我在使用 annotate 时遇到问题OuterRef在 Django 1 11 中的子查询 型号示例 class A models Model name models CharField max length 50 class B mod
  • IIS Express 与 VS2010 SP1 不断重建网站

    我正在使用具有多个网站项目的大型解决方案 最近决定从 Cassini 切换到 IIS Express 大约有 10 名左右的开发人员共享相同的解决方案 项目以及 web configs 除了我之外 他们都在愉快地使用 IIS Express
  • Nougat 版本的快捷方式

    当我尝试在 Intent 包中传递可序列化时 我发现了这个致命异常 我认为这与我试图实现的牛轧糖快捷方式有关 这里有一个例外 12 16 16 17 32 972 20461 20461 debug E AndroidRuntime FAT
  • Flutter 蓝牙打印到 Zebra

    我需要在 Zebra zq520 蓝牙热敏打印机上添加打印功能 我设法使用 flutter blue 插件来做到这一点 但我对实现并不满意 我讨厌将字符串分成更小的块以便通过蓝牙 并且等待 我想知道是否有更好的方法 就像我们在过去的 好 j
  • 通过套接字发送对象

    我过去做过的唯一套接字编程是简单的文本流 我想知道通过套接字发送 Java 对象之类的内容的最有效方法是什么 例如 如果我有以下 Employee 类 Dependent 将是一个由家属信息组成的简单类 public class Emplo