当前位置: 首页 > 面试题库 >

通过Spring将字段注入由Hibernate加载的实体

范轶
2023-03-14
问题内容

我正在寻找一种通过Spring在由Hibernate从数据库加载的bean中注入某些属性的方法。

例如

class Student {
   int id; //loaded from DB
   String name; //loaded from DB
   int injectedProperty; //Inject via Spring
}

我是否可以配置Spring,以便每当Hibernate创建Student类的对象时,在某些applicationContext文件中定义的某些属性就会随对象创建一起注入?


问题答案:

为此,可以使用AspectJ类与@Configurable注解进行编织。这将自动连接new具有Spring依赖项的带注释类的任何实例,包括使用Hibernate之类的对象通过反射实例化的对象。

它确实需要一些类加载魔术,因此取决于与服务器平台的兼容性。



 类似资料:
  • 我试图在多对一关系字段上使用Java的Hibernate@Filter,但当我启用该过滤器并尝试使用AJAX中的StockDailyRecord服务调用getAll方法时,我得到了以下结果: 这是我定义过滤器的实体: 但是,当我用数据库“stock_id”中的实际列更改过滤器,并将其与我希望的id进行比较时,过滤器可以正常工作。 以下是我如何在StockDailyRecordService中启用过

  • 我正在实现一个部署到Wildfly 8.2.0的Java EE应用程序。有多个EntityManager,我想通过字段名注入它们。为此,我用@products创建了一个producer方法,该方法从InjectionPoint获取字段名。 然后我可以简单地向EntityManager注入正确的字段名: 到目前为止,这个解决方案仍然有效,但CDI中是否有另一种更优雅的方式来实现“按字段名注入”功能?

  • 在我的类中,在测试下,我有一些私有服务字段和一个java类型的私有字段。 和注释极大地创建了模拟和注入服务字段。但是,如何为字段创建模拟,因为Mockito不允许为类创建模拟? 我看到的一个选择是使用接口而不是字段类型,但这需要更改类的代码,我不喜欢这种想法。 更新:类定义如下 由于某些原因,我们没有使用Spring集成测试功能,也不想在不同类型的注入(例如ctor注入)中返工

  • 我遇到一个问题,当用户按下页面顶部的submit按钮时,另一个jsp会加载到下面的frame/iframe中。我使用的是Spring MVC架构,jsp由控制器决定。我应该如何使控制器将jsp映射到iframe?对于以前的所有映射,我都使用了@RequestMapping注释。

  • 在web应用程序上,我们使用Spring 3.2和Hibernate 4.1.1,并实现了一个类似插件的架构。插件可以在运行时添加和删除。对于每个模块,我们定义了一个单独的类加载器,并在spring上创建了单独的子应用程序上下文。完整的配置是使用注释完成的,不再需要对beans进行XML配置。 Spring Hibernate配置类 现在的问题是:一些插件包含自己的实体(DAO)类,这些类在运行时

  • 问题内容: 我有3节课: 我的hibernate映射文件就像下面这样。我想为该对象添加一个过滤器,并在加载该对象之前启用了该过滤器。但这不起作用。我的hibernate版本是。 Event.hbm.xml PersonalEventRepository hibernate生成的SQL查询没有我的过滤器。我怎么了 为什么hibernate无法为连接子类启用过滤器?谢谢大家… 问题答案: 这不是错误,