草庐IT

持久态

全部标签

java - 持久化图形数据 (Java)

我有一个利用图形(树状)自定义结构的应用程序。这些结构不是真正的树,但几乎所有东西都连接在一起。数据量也很大(可以存在数百万个节点)。树节点的类型可以不同以使其更有趣(继承)。我不想更改数据结构以适应持久性存储。我想在不做太多额外工作的情况下保留这些数据。我已经搜索了一些选项来解决这个问题,但找不到完全适合我需要的东西。可能的选项:序列化、带ORM的数据库(Hibernate?)、JCR(JackRabbit?),还有什么?性能很重要,因为它是一个基于GUI的“实时”应用程序(无批处理),并且可能有数百万个图形节点应该在内存和持久数据存储之间读取和写入。有没有人有存储这类数据的经验或想

java - 持久化应用程序属性的好方法是什么?

我有一系列应用程序属性,它们都有不同的类型。类型可以包括boolean值、日期、时间戳或字符串。我需要能够为管理用户提供更改这些属性的能力,并让系统记住它们/将它们保存到文件中。我正在寻找一种最佳实践方法来存储这些应用程序属性,并能够在更改时保留它们并在启动时加载它们。 最佳答案 来自future的消息:链接已经失效。Java有一个专门为此目的构建的工具-属性。这是关于它的非常好的文章https://docs.oracle.com/javase/tutorial/essential/environment/properties.ht

java - Hibernate 在不引用其他表的情况下持久化 Map<String, String>

你能帮我用Hibernate持久化字符串映射吗?map值来自客户端并且是随机的,所以我不想为map值存储单独的表异常Causedby:org.hibernate.AnnotationException:Associatedclassnotfound:java.lang.String代码@EntitypublicclassUserConfig{@Id@SequenceGenerator(sequenceName="CONFIG_SEQ",name="ConfigSeq",allocationSize=1)@GeneratedValue(strategy=GenerationType.SE

【鸿蒙 HarmonyOS 4.0】数据持久化

一、数据持久化介绍数据持久化是将内存数据(内存是临时的存储空间),通过文件或数据库的形式保存在设备中。HarmonyOS提供两种数据持久化方案:1.1、用户首选项(Preferences):通常用于保存应用的配置信息。数据通过文本的形式保存在设备中,应用使用过程中会将文本中的数据全量加载到内存中,所以访问速度快、效率高,但不适合需要存储大量数据的场景。1.2、数据库:键值型数据库(KV-Store):一种非关系型数据库,其数据以“键值”对的形式进行组织、索引和存储,其中“键”作为唯一标识符。适合很少数据关系和业务关系的业务数据存储,同时因其在分布式场景中降低了解决数据库版本兼容问题的复杂度,和

java - 持久化 Java 对象的最简单方法是什么?

现在我有java程序,其类当前是POJO并存储在volatile内存中。这些都需要坚持。据我了解,两个流行的选择是JDO和JavaPersistenceAPI。对于对SQL、Torque等知之甚少的人来说,将持久性添加到我的程序数据中的最简单方法是什么? 最佳答案 序列化到文件系统的传统方法是使用JavaSerialisation.但是你需要实现Serializable无处不在。一个更简单的解决方案是使用XStream序列化为XML(然后转储到文件系统).您不需要实现任何接口(interface),并且大多数东西都可以序列化和反序列

java - 持久化实体时的问题

@Entity@Table(name="jobitems")@IdClass(JobItemId.class)publicclassJobItemimplementsSerializable{@ManyToOne@PrimaryKeyJoinColumn(name="forumId")privateForumforum;@ManyToOne@PrimaryKeyJoinColumn(name="parsingJobId")privateParsingJobparsingJob;@Id@Column(name="forumId",insertable=false,updatable=fa

java - builder 模式和持久化

我在项目的几个类中使用了构建器模式(多个参数,一些是必需的,一些是可选的,等等)。这些类是不可变的(没有setter,集合getter的深层复制)。我现在正尝试使用持久性框架将这些对象存储在数据库中,该框架使用默认构造函数+setter构造对象。它不太喜欢我的Builders!我不想将该设置降级为POJO并失去当前设计的优势(灵active、不变性、构造安全性)。我欢迎任何有关可在这种情况下使用的解决方法的反馈(我可以包装这些类中的每一个,但这会使类的数量增加一倍,我宁愿避免这种情况)。一个post实际上指出这是Builder模式的一个特定缺点。编辑一个answer建议使用私有(pri

java - 如何将实体绑定(bind)到特定的持久性单元

在使用struts2ejbhibernate的Web应用程序中,是否可以告诉应用程序为特定的持久性单元名称查找或创建实体,该名称写在persistence.xml文件中,在部署时间?我在persistence.xml中有两个持久化单元和一个数据源(包括两个“local-tx-datasource”)jboss节点下的xml文件。澄清一下,我的意思是,我试过了;@Entity@PersistenceContext(unitName="MYJNDINAMEspecifiedinpersistence.xml")publicabstractclassVehicle{并不起作用..然后尝试了这

java - 在 Hibernate 中使用 transient 实体更新/合并现有的持久对象

我在我的数据库中处理一个相当复杂的对象图。我正在使用XStream序列化和反序列化这个工作正常的对象图。当我导入数据库中存在的对象的对象图时,它最初是transient的,因为没有ID并且hibernate对此一无所知。然后我有业务逻辑,通过确定新transient导入对象中的哪些对象映射到现有持久对象,在我的对象图的部分设置ID。然后我使用Hibernate的merge()和saveOrUpdate()。一些伪代码可以让您更好地了解我在做什么:ComplexObjecttransObj=xstream.import("object.xml");ComplexObjectpersist

java - 使用 MyBatis 将集合持久化到对象中

我有POJO类:classTicket{privateintid;privatedoublecost;privateDatetime;privateListplaces;//Gettersandsettershere}classPlace{privateintrow;privateintplace;//Gettersandsettershere}然后我创建一张票和一些地方:Ticketticket=newTicket();ticket.setCost(58.7);ticket.setTime(newDate());Placeplace1=newPlace();place1.setRow