当前位置: 首页 > 知识库问答 >
问题:

假设@transient使JPA提供者始终保持带注释的字段不变,这是否安全?

倪子晋
2023-03-14

那么,我真的应该知道,对一个实体进行合并或刷新,无论在操作时是否托管,都会使某些@transient字段的值发生变化吗?

如果是的话,这类情况的一个简单例子是什么?

共有1个答案

乐钱青
2023-03-14

>

  • 我想考虑3种情况

    • 对非托管实体调用merge,其中非托管实体使用临时字段填充
    • 对托管实体调用merge,其中托管实体在成为托管后使用临时字段填充
    • 在托管实体上调用刷新,其中托管实体在被托管后使用瞬态字段填充。无论如何都不允许对非托管实体调用refresh

    对非托管实体调用merge,其中非托管实体使用瞬态字段填充。

      null
      null
    • 与合并托管实体相同的参数。JPa不能失去您的瞬时价值。我已经验证了此行为,并且行为符合预期。

    摘要

    • 调用merge时,将丢失非托管实体的瞬态值。

    吉特雷波

      null

  •  类似资料:
    • 问题内容: 在我们的应用程序中,我们需要具有只能分配一次的字段。 最初,我们想到封装字段并将设置程序设为私有。但是,引起一些问题: 如果没有公共设置者,Hibernate是否仍然可以从数据库映射字段? 我是否可以剥离设置器并使字段仅在实体构造函数中可变? 最后,是否有任何标准的JPA方法使字段不变? 提前致谢。 问题答案: 广告。1:我相信,如果将注释放在字段而不是在getter上,则JPA会将普

    • 我正在用Kotlin和Dagger 2开发一个Android项目。我有一个,我在其中定义了一些提供程序函数。 我看到有些人使用kotlin,有些人使用Dagger的来注释提供者函数: > 注释和/或的动机是什么?背后的原因是什么,或者这样做的好处是什么? 使用和哪个更好?或者哪一个都没问题?或者我应该两个都用,如果是,那么两个都用的原因是什么?

    • 我想问的主要问题是boto3如何找到IAM的角色。 我正在使用AWSEC2实例测试docker容器。我将IAM角色分配给EC2实例,但没有为Docker映像分配任何AWS访问配置。但当我运行Docker映像时,我可以使用分配给IAM角色的AWS资源。 这就是boto3如何在boto3留档中找到凭据。 将凭据作为boto.client()方法中的参数传递 创建会话对象时将凭据作为参数传递 环境变量

    • 问题内容: Elasticsearch是否保持多值字段的顺序? 即,如果我在字段中输入了以下值: (鉴于未分析字段) 我是否可以确定列表的内容将始终按照与放置列表相同的顺序返回? 在上面的示例中,我想确保“值”中第一个位置的“一个”将始终与“ values_original”等中的“ 1”相对应。 我也可以将其保留为嵌套对象,即 但我想避免开销。 如果可以保证保留多值字段中的值顺序,那么我保留两个

    • 有人能解释一下为什么以下两个示例中的第一个编译,而第二个不编译?请注意,唯一的区别是第一个显式限定了对x的引用。这个,而第二个没有。在这两种情况下,在初始化之前显然尝试使用最终字段x。 我本以为这两个样本会被完全平等地对待,从而导致两者都出现编译错误。 1) 2)

    • 问题内容: 我需要创建一个自定义约束注释,该注释可以访问我的bean的另一个字段的值。我将使用此批注来验证字段,因为它取决于另一个字段的值,但是我定义该字段的方式是编译器在我的字段“必须为常量表达式”中说“批注属性的值”。 我以这种方式定义了它: 在我的豆子中,我想要这样的东西: 有什么方法可以定义注释,以便字段值可以是变量? 谢谢 问题答案: 最简单的方法是退后一步:您编写的约束/验证器在字段级