Spring 如何在Hibernate用户类型对象中注入bean?
我需要将DB中的一些实体字段保存为JSON。 最受欢迎的解决方案是定义自定义hibernate用户类型 JSON converter(Jackson)文档建议将其作为单例使用,但hibernate本身会创建自定义用户类型对象。Spring 如何在Hibernate用户类型对象中注入bean?,spring,hibernate,dependency-injection,singleton,usertype,Spring,Hibernate,Dependency Injection,Singleton,Usertype,我需要将DB中的一些实体字段保存为JSON。 最受欢迎的解决方案是定义自定义hibernate用户类型 JSON converter(Jackson)文档建议将其作为单例使用,但hibernate本身会创建自定义用户类型对象。 如何将spring定义的JSON转换器bean注入到我的自定义Hibernate用户类型对象中?该解决方案可以使用@Configurable,这样您就能够自动连接属性对象,即使该属性对象不是用来关联它们的spring容器 请参阅spring文档: 代码示例: @Confi
如何将spring定义的JSON转换器bean注入到我的自定义Hibernate用户类型对象中?该解决方案可以使用@Configurable,这样您就能够自动连接属性对象,即使该属性对象不是用来关联它们的spring容器 请参阅spring文档: 代码示例:
@Configurable
public class CSessionImpl implements CSessionOperations {
private Touriste touriste;
@Inject
private Office office;
@Inject
private OTmanager manager;
@Inject private ScheduledExecutorService executorService;
private ScheduledFuture<Void> schedule;
@PostConstruct
private void replanifierMiseHorsLigne(){
if(schedule != null){
schedule.cancel(false);
}
schedule = executorService.schedule(new Callable<Void>() {
@Override
public Void call() t
@可配置
公共类CSSessionImpl实现CSSessionOperations{
私人旅游者;
@注入
私人办公室;
@注入
私人OTM经理;
@注入私有ScheduledExecutorService executorService;
私人计划未来计划;
@施工后
私有无效重新列报器MiseHorslingne(){
如果(计划!=null){
附表.取消(假);
}
schedule=executorService.schedule(新的可调用的(){
@凌驾
公共无效调用()t
请参阅本示例中的内容,当调用CSessionImpl.<context:spring-configured/>
您还需要在编译时或运行时执行编织
maven用于编译时编织的示例:
<build>
<finalName>OTLogiciel</finalName>
<plugins>
<plugin>
<groupId>org.codehaus.mojo</groupId>
<artifactId>aspectj-maven-plugin</artifactId>
<version>1.4</version>
<executions>
<execution>
<id>compile</id>
<configuration>
<showWeaveInfo>true</showWeaveInfo>
<source>${java-version}</source>
<target>${java-version}</target>
<verbose>false</verbose>
<outxml>true</outxml>
<aspectLibraries>
<aspectLibrary>
<groupId>org.springframework</groupId>
<artifactId>spring-aspects</artifactId>
</aspectLibrary>
</aspectLibraries>
</configuration>
<goals>
<goal>compile</goal>
<goal>test-compile</goal>
</goals>
</execution>
</executions>
<dependencies>
<dependency>
<groupId>javax.persistence</groupId>
<artifactId>persistence-api</artifactId>
<version>1.0</version>
<optional>true</optional>
</dependency>
<dependency>
<groupId>org.aspectj</groupId>
<artifactId>aspectjweaver</artifactId>
<version>${org.aspectj-version}</version>
</dependency>
<dependency>
<groupId>org.aspectj</groupId>
<artifactId>aspectjtools</artifactId>
<version>${org.aspectj-version}</version>
</dependency>
</dependencies>
</plugin>
奥特逻辑
org.codehaus.mojo
aspectj maven插件
1.4
编译
真的
${java版本}
${java版本}
假的
真的
org.springframework
春季方面
编译
测试编译
javax.persistence
持久性api
1
真的
org.aspectj
aspectjweaver
${org.aspectj版本}
org.aspectj
aspectjtools
${org.aspectj版本}
如果您使用的是eclispe,还需要安装“ApectJ开发工具”