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

基本属性类型不应该是IDao-intellij消息

陈畅
2023-03-14

我在我的实体对象中收到以下消息?

基本属性类型不应为IDao

使用方式如下:

@Entity
@Table
public final class MyEnity {

    @Resource(name = "Dao")
    private IDao dao;

我知道这个名字不好,但是把我的道(用存储库注释)注入到我的被注释为Hibernate实体的域对象中有什么问题?而IDao是道类实现的接口...

共有1个答案

奚和光
2023-03-14

IDao似乎是注入实体的处理元素,您不打算持久化它。如果是这样,您应该将其标记为瞬态,以便ORM在对实体进行CRUD操作期间忽略它。

@Resource(name = "Dao")
private transient IDao dao;

顺便说一句,我没有看到您的实体是@Configurable。您打算如何将注入其中?ORM将使用默认构造器创建一个类型为MyEntity的新对象,并调用setter设置数据库中的值。您的IDao道不会被注入,因为这样的实例不是Spring管理的bean。您必须将MyEntity标记为@Configurable以使其成为Spring管理,以便使用new运算符创建的实例将获得资源注入。

 类似资料:
  • 我正在引用另一个实体类中的实体,并出现此错误。下面是示例代码。我有这些课程在坚持。还有xml。 是什么导致了这个问题?我正在使用Spring数据JPA和Hibernate。

  • 当然,像integer,float或者boolean等类型仍然存在,但是它们全部都会作为对象存在的。基本类型的名字和它们工作方式都是与Java非常相似的,但是有一些不同之处你可能需要考虑到: 数字类型中不会自动转型。举个例子,你不能给Double变量分配一个Int。必须要做一个明确的类型转换,可以使用众多的函数之一: val i:Int=7 val d: Double = i.toDouble()

  • 我是Spring启动的新手。我尝试使用Spring Security和Hibernate实现登录和注册功能。 首先,我使用Hibernate从数据库生成持久性映射实体类。我需要在UserEntity类中实现UserDetails接口,但问题发生了。 我无法在UserDetails中实现这些方法。 尝试实现GetAuthories时出错。以下是错误信息。 “Basic”属性类型不应是容器。检查信息:

  • 我在我的项目中使用Spring数据JPA。当实体被保存或更新时,我想跟踪CreatedBy和LastModifiedBy,以了解哪个用户执行该活动。但我面临的问题是,我有两种不同类型的用户。这些是系统用户和加油机。这两种用户类型都有权在任何实体中执行CRUD操作。 另一件事是,我见过大多数示例将和作为字符串字段保存。但问题是从数据库中检索数据时,他们将检索为用户ID(字符串值)。我需要将用户ID存

  • 我已经定义了一个枚举类型,详细描述了用于给灰度图像着色的各种调色板,为此我使用了描述属性和TypeConver,以便使用我绑定到该类型的组合框、列表框等枚举值的描述字符串。枚举看起来像这样: EnumDescriptionTypeConverter如下所示: 使用它,我可以绑定enum类型,比如组合框的ItemsSource属性,并让描述字符串自动用作组合框元素,使用另一个自定义标记扩展类,我认为

  • 如何使类示例推断类型基于实例值检查: 打字沙盒。