有没有java对象到对象映射的工具? [关闭]

2024-04-28

我正在尝试使用 java 将 DO 转换为 DTO,并在开始编写自己的工具之前寻找自动化工具。我只是想知道是否有任何免费工具可用。


周围有一些图书馆:

  • Commons-BeanUtils http://jakarta.apache.org/commons/beanutils:ConvertUtils -> 用于将字符串标量值转换为指定类的对象、将字符串数组转换为指定类的数组的实用方法。

  • 下议院朗 http://jakarta.apache.org/commons/lang: ArrayUtils -> 对数组、原始数组(如 int[])和原始包装数组(如 Integer[])的操作。

  • Spring框架 http://springframework.org/:Spring 对 PropertyEditors 有很好的支持,它也可以用于将对象转换为字符串或从字符串转换。

  • Dozer https://github.com/DozerMapper/dozer/:Dozer 是一种功能强大但简单的 Java Bean 到 Java Bean 映射器,它以递归方式将数据从一个对象复制到另一个对象。通常,这些 Java Bean 具有不同的复杂类型。

  • 模型映射器 https://github.com/modelmapper/modelmapper:ModelMapper 是一个智能对象映射框架,可以自动将对象相互映射。它使用基于约定的方法来映射对象,同时提供简单的重构安全 API 来处理特定用例。

  • 映射结构 http://mapstruct.org/:MapStruct 是用于 bean 映射的编译时代码生成器,可在运行时生成快速(不使用反射或类似)、无依赖且类型安全的映射代码。

  • Orika https://github.com/orika-mapper/orika:Orika 使用字节代码生成以最小的开销创建快速映射器。

  • Selma http://www.selma-java.org/:用于映射的编译时代码生成器

  • JMapper http://jmapper-framework.github.io/jmapper-core/:使用 Annotation、XML 或 API 生成 Bean 映射器(似乎已死,最后更新于 2 年前)

  • Smooks http://www.smooks.org:Smooks JavaBean Cartridge 允许您从消息数据创建和填充 Java 对象(即绑定数据)(由超丝蛋白 http://www.smooks.org在评论中)。(不再积极开发)

  • 共享转换 http://commons.apache.org/dormant/convert/:Commons-Convert 旨在提供一个专用于将一种类型的对象转换为另一种类型的任务的单一库。第一阶段将重点关注对象到字符串和字符串到对象的转换。 (似乎已经死了,最后更新2010年)

  • 变形 https://github.com/cchabanois/transmorph:Transmorph 是一个免费的 java 库,用于将一种类型的 Java 对象转换为另一种类型的对象(具有另一个签名,可能是参数化的)。(似乎已经死了,最后更新于 2013 年)

  • EZMorph http://aalmiray.github.io/ezmorph/:EZMorph 是一个简单的 java 库,用于将一个对象转换为另一个对象。它支持基元和对象的转换、多维数组以及 DynaBeans 的转换 (似乎已经死了,最后更新于 2008 年)

  • Morph http://morph.sourceforge.net/:Morph 是一个 Java 框架,可以简化应用程序的内部互操作性。当信息流经应用程序时,它会经历多次转换。 Morph 提供了一种标准方法来实现这些转换。(似乎已经死了,最后更新于 2008 年)

  • Lorentz http://gleamynode.net/dev/lorentz/docs/index.html:洛伦兹是一个通用的对象到对象的转换框架。它提供了一个简单的API来将一种类型的Java对象转换为另一种类型的对象。(似乎已经死了)

  • OTOM https://java.net/projects/otom:使用 OTOM,您可以将任何数据从任何对象复制到任何其他对象。可能性是无止境。欢迎来到“秋天”。

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

有没有java对象到对象映射的工具? [关闭] 的相关文章

  • java.lang.NoClassDefFoundError:org.apache.batik.dom.svg.SVGDOMImplementation

    我在链接到我的 Android LibGDX 项目的 Apache Batik 库时遇到了奇怪的问题 但让我们从头开始 在 IntelliJ Idea 中我有一个项目 其中包含三个模块 Main Android 和 Desktop 我强调的
  • 在 Java 中连接和使用 Cassandra

    我已经阅读了一些关于 Cassandra 是什么以及它可以做什么的教程 但我的问题是如何在 Java 中与 Cassandra 交互 教程会很好 如果可能的话 有人可以告诉我是否应该使用 Thrift 还是 Hector 哪一个更好以及为什
  • 如何为最终用户方便地启动Java GUI程序

    用户想要从以下位置启动 Java GUI 应用程序Windows 以及一些额外的 JVM 参数 例如 javaw Djava util logging config file logging properties jar MyGUI jar
  • 给定两个 SSH2 密钥,我如何检查它们是否属于 Java 中的同一密钥对?

    我正在尝试找到一种方法来验证两个 SSH2 密钥 一个私有密钥和一个公共密钥 是否属于同一密钥对 我用过JSch http www jcraft com jsch 用于加载和解析私钥 更新 可以显示如何从私钥 SSH2 RSA 重新生成公钥
  • 多个 Maven 配置文件激活多个 Spring 配置文件

    我想在 Maven 中构建一个环境 在其中我想根据哪些 Maven 配置文件处于活动状态来累积激活多个 spring 配置文件 目前我的 pom xml 的相关部分如下所示
  • 控制Android的前置LED灯

    我试图在用户按下某个按钮时在前面的 LED 上实现 1 秒红色闪烁 但我很难找到有关如何访问和使用前置 LED 的文档 教程甚至代码示例 我的意思是位于 自拍 相机和触摸屏附近的 LED 我已经看到了使用手电筒和相机类 已弃用 的示例 但我
  • JavaMail 只获取新邮件

    我想知道是否有一种方法可以在javamail中只获取新消息 例如 在初始加载时 获取收件箱中的所有消息并存储它们 然后 每当应用程序再次加载时 仅获取新消息 而不是再次重新加载它们 javamail 可以做到这一点吗 它是如何工作的 一些背
  • Java TestNG 与跨多个测试的数据驱动测试

    我正在电子商务平台中测试一系列商店 每个商店都有一系列属性 我正在考虑对其进行自动化测试 是否有可能有一个数据提供者在整个测试套件中提供数据 而不仅仅是 TestNG 中的测试 我尝试不使用 testNG xml 文件作为机制 因为这些属性
  • 如何将 pfx 文件转换为 jks,然后通过使用 wsdl 生成的类来使用它来签署传出的肥皂请求

    我正在寻找一个代码示例 该示例演示如何使用 PFX 证书通过 SSL 访问安全 Web 服务 我有证书及其密码 我首先使用下面提到的命令创建一个 KeyStore 实例 keytool importkeystore destkeystore
  • AWS 无法从 START_OBJECT 中反序列化 java.lang.String 实例

    我创建了一个 Lambda 函数 我想在 API 网关的帮助下通过 URL 访问它 我已经把一切都设置好了 我还创建了一个application jsonAPI Gateway 中的正文映射模板如下所示 input input params
  • Google App Engine 如何预编译 Java?

    App Engine 对应用程序的 Java 字节码使用 预编译 过程 以增强应用程序在 Java 运行时环境中的性能 预编译代码的功能与原始字节码相同 有没有详细的信息这是做什么的 我在一个中找到了这个谷歌群组消息 http groups
  • 如何从终端运行处理应用程序

    我目前正在使用加工 http processing org对于一个小项目 但是我不喜欢它附带的文本编辑器 我使用 vim 编写所有代码 我找到了 pde 文件的位置 并且我一直在从 vim 中编辑它们 然后重新打开它们并运行它们 重新加载脚
  • Android 中麦克风的后台访问

    是否可以通过 Android 手机上的后台应用程序 服务 持续监控麦克风 我想做的一些想法 不断聆听背景中的声音信号 收到 有趣的 音频信号后 执行一些网络操作 如果前台应用程序需要的话 后台应用程序必须能够智能地放弃对麦克风的访问 除非可
  • 如何从泛型类调用静态方法?

    我有一个包含静态创建方法的类 public class TestClass public static
  • simpleframework,将空元素反序列化为空字符串而不是 null

    我使用简单框架 http simple sourceforge net http simple sourceforge net 在一个项目中满足我的序列化 反序列化需求 但在处理空 空字符串值时它不能按预期工作 好吧 至少不是我所期望的 如
  • 编译器抱怨“缺少返回语句”,即使不可能达到缺少返回语句的条件

    在下面的方法中 编译器抱怨缺少退货声明即使该方法只有一条路径 并且它包含一个return陈述 抑制错误需要另一个return陈述 public int foo if true return 5 鉴于Java编译器可以识别无限循环 https
  • 当我从 Netbeans 创建 Derby 数据库时,它存储在哪里?

    当我从 netbeans 创建 Derby 数据库时 它存储在哪里 如何将它与项目的其余部分合并到一个文件夹中 右键单击Databases gt JavaDB in the Service查看并选择Properties This will
  • JGit 检查分支是否已签出

    我正在使用 JGit 开发一个项目 我设法删除了一个分支 但我还想检查该分支是否已签出 我发现了一个变量CheckoutCommand但它是私有的 private boolean isCheckoutIndex return startCo
  • 节拍匹配算法

    我最近开始尝试创建一个移动应用程序 iOS Android 它将自动击败比赛 http en wikipedia org wiki Beatmatching http en wikipedia org wiki Beatmatching 两
  • Spring Boot @ConfigurationProperties 不从环境中检索属性

    我正在使用 Spring Boot 1 2 1 并尝试创建一个 ConfigurationProperties带有验证的bean 如下所示 package com sampleapp import java net URL import j

随机推荐