Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/365.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何在类型处理程序中使用spring注入属性?_Java_Spring_Spring Boot_Mybatis_Typehandler - Fatal编程技术网

Java 如何在类型处理程序中使用spring注入属性?

Java 如何在类型处理程序中使用spring注入属性?,java,spring,spring-boot,mybatis,typehandler,Java,Spring,Spring Boot,Mybatis,Typehandler,我正在设置一个应用程序,它使用mybatis将对象映射到数据库或从数据库映射对象 在mybatis文件中,我使用typehandler映射发送到数据库的一个对象 在typeHandler中,我使用spring@resource注入一个属性 但是,当调用typehandler时,注入的属性总是null 从我的研究中,我发现mybatis在弹簧加载之前设置其配置。这意味着不能将bean注入处理程序,因为它是在之后创建的 有人知道这个问题的解决方案吗?应该让spring管理定制的类型处理程序,如下所示

我正在设置一个应用程序,它使用
mybatis
将对象映射到数据库或从数据库映射对象

在mybatis文件中,我使用
typehandler
映射发送到数据库的一个对象

在typeHandler中,我使用spring
@resource
注入一个属性

但是,当调用
typehandler
时,注入的属性总是
null

从我的研究中,我发现
mybatis
在弹簧加载之前设置其配置。这意味着不能将bean注入处理程序,因为它是在之后创建的


有人知道这个问题的解决方案吗?

应该让spring管理定制的类型处理程序,如下所示:

<bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
    <property name="typeHandlers">
      <array>
        <bean class="com.example.YourCustomTypeHandler">
          <!-- inject -->
          <property name="property" ref="bean"/>
        </bean>
      </array>
    </property>
</bean>