问题标签 [transient]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
222 浏览

google-app-engine - 确定对象是否属于持久性管理器

我的具体问题(其他一切都只是上下文,如果您知道我的问题的答案,可以忽略):如何确定对象是否是瞬态的或不使用 JDO(或者我如何编写一个简短的方法来执行此操作)?

对于那些好奇或不明白我为什么想要这个的人的背景:

我在 GAE/J 上使用 JDO 工作,目前正在实现应用程序引擎 memcache api 的使用。我遇到了一个问题,我从我的数据存储中缓存了一个实体的实例。在请求结束时,我的持久性管理器已关闭,并且 - 据我所知,缓存的对象变为瞬态(我可能对此错了)并挂在缓存中。

在路上,缓存的对象用于构建我的视图等,但是当我去更新对象并尝试持久化时;该对象不会持续存在(这是理所当然的)。我通过在执行更新操作之前尝试重新获取缓存的对象来解决这个问题。但这引入了另一个问题,因为现在当我更新一个碰巧没有被缓存的对象时,它由我的持久性管理器管理,并且当我获取新对象时,我执行的任何更新操作都会被覆盖。基本上,我正在这样做......

如果有其他方法我应该尝试这样做,或者我正在考虑这个错误,请随时指出。

0 投票
2 回答
3670 浏览

hibernate - 休眠尝试序列化标记为@Transient 的字段

我试图将一组我称之为相对简单的对象保存到数据库中。不幸的是,Hibernate 似乎忽略了我的几个类上的 @Transient 注释(或者它试图序列化,甚至带有注释)。当我有无法序列化的类时,这会导致严重错误。

如果需要,我可以使 AxisEventHandler 类可序列化,但是如果我不能(例如它是封闭源代码库中的最终类),那我该怎么办?

我可以提供有关 GenericEventHandler 类的更多信息或我为简洁起见而注释掉的任何代码(但我不认为它们特别重要......我可能是错的)。

例外:

主轴类:

基本实现:

AxisEventHandler 类:

0 投票
6 回答
894 浏览

java - 哪些变量或对象应该与瞬态关键字相关联?

我已经阅读了有关序列化理论部分的内容,其中说当需要保持对象状态时需要它。我编写了一个 Web 服务应用程序,它将在不同的 JVM 上运行

我正在改进我的 Web 服务的性能,所以我决定在我的类transient中为我的一些变量使用关键字Webservice

我有一些与此相关的问题,比如哪些对象需要序列化,哪些不应该序列化

1.首先从我的 Logger 开始,我将使用关键字transient 例如:

2.但是类里面的实例变量呢??我们是否需要为他们使用瞬态?例如 :

请分享您的意见。

0 投票
1 回答
2135 浏览

java - Hibernate 使用瞬态对象更新实体

我在徘徊这种情况的最佳方法是什么:我有一个表,我想更新表中的一行。我得到了一个新的瞬态对象,该对象与表中的某行相关,但某些信息不同(这是需要更新的信息)。我从数据库中检索对象,现在有一个持久对象和一个需要更新数据库对象的瞬态对象。

我正在使用 Hibernate 和 MySql。

什么是最好的方法。

编辑:该对象非常复杂,具有其他表的外键。

谢谢,罗南。

0 投票
3 回答
12876 浏览

java - hbm.xml 中映射的属性可以是瞬态的吗?

假设我有一个User这样的实体:

我不想转移hashedPassword给客户,所以我让它暂时。

此类由 Hibernate 映射,两个字段都映射在 hbm.xml 中。

这种实现是否安全且正确?Hibernate 会正确存储hashedPassword在数据库中,将其加载到数据库中的对象中,将其保存在复制的二级缓存和本地会话缓存等中吗?

换句话说,休眠或二级缓存transient是否以任何方式尊重或完全忽略它?

编辑:我已经得到了两个答案,似乎没有包含等式的一个特定方面。我根本不使用注释,只使用 .xml 中的 XML 映射hbm.xml。并且这个 Java-transient 字段是 OR-mapped in hbm.xml

0 投票
1 回答
928 浏览

core-data - NSManagedObject:我应该使用瞬态还是常规@property?

为什么不使用常规的@property 而不是瞬态的?我不在乎支持撤消。

0 投票
1 回答
1412 浏览

java - 会话中的瞬态对象

我已阅读框架文档之一,“如果会话中需要大对象,应用程序应将这些对象定义为会话管理器中的瞬态对象”

定义那些大对象瞬态如何不会影响保持大对象在会话中?

0 投票
1 回答
166 浏览

performance - grails 中的瞬态属性会影响应用程序的内存使用吗?

我正在使用每个域类的瞬态属性。其中一些有超过10个。

我遇到了一个非常缓慢的应用程序。我开始使用 tc 服务器对其进行分析。大部分加载时间用于渲染 gsp 文件。

瞬态值是否存在任何已知问题,即它们会消耗更多内存或减慢整个应用程序的速度?我是否必须用普通属性替换它们并在插入/更新时更新值?

0 投票
3 回答
482 浏览

nhibernate - 瞬态实例的 NHibernate 查询导致“保存瞬态实例”-异常

我有一些旧代码正在执行一个模型可以是瞬态的查询。也就是说,一个模型包含一些从用户输入中填充的字段,然后将其用作查询的一部分。它在 NH 2.1.x 下工作,但在最新版本下失败。

引发的异常是“对象引用了未保存的瞬态实例 - 在刷新之前保存瞬态实例”。当 NH 尝试使用非持久对象作为查询的一部分执行查询时,就会发生这种情况。

一个简化版本来说明问题。

调用代码等价于:

我期望发生的事情(这似乎是旧 NHibernate 版本的行为)是传递的引擎仅用于获取 Id。也就是说,生成 SQl 之类的 select .... from Cars where Engine = 42

但是在新版本中,NHibernate 似乎会检查表达式中使用的引擎是否实际上是持久的。

有没有办法避免在执行查询之前加载持久引擎?

0 投票
1 回答
2439 浏览

java - CDI 构造函数注入不适用于瞬态不可序列化依赖项

我非常喜欢 CDI 的构造函数注入,但现在我发现了一个用例,其中构造函数注入显然不能按预期工作。

在我的示例中,我有两个类。类“BeanA”没有定义明确的范围,也没有实现 Serializable。类“BeanB”使用@SessionScoped 进行注释,并实现了可序列化。

当我尝试将 BeanA 的实例注入 BeanB 时,我从 Weld 得到 UnserializableDependencyException,因为 BeanA 不可序列化。这是预期的行为。

当我用“瞬态”标记字段“beanA”时,注入工作没有问题:

现在 Weld 不会抛出任何异常。

这对我来说非常好,但是当我想通过构造函数注入来实现它时,我的理解问题就出现了。当我执行以下操作时,它不再起作用:

使用此代码,我再次获得 UnserializableDependencyException。我认为构造函数注入和字段注入或多或少是等效的,但显然它们不是。我的错误是什么?