首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在Spring的typeHandler中与typeHandler一起使用“xml”?

如何在Spring的typeHandler中与typeHandler一起使用“xml”?
EN

Stack Overflow用户
提问于 2014-09-19 17:31:02
回答 1查看 2K关注 0票数 0

我在用紫提花和春天。我想在mysql.There中使用int值(称为‘序号’)存储Enum类型,这是一种简单的方法:

代码语言:javascript
复制
<!-- mybatis-config.xml -->
<typeHandlers>
<typeHandler handler="org.apache.ibatis.type.EnumOrdinalTypeHandler"     javaType="com.stackoverflow.MyEnumType"/>
</typeHandlers>

因此,当执行select或insert sql时,自动映射程序将自动使用EnumOrdinalTypeHandler。

我的问题是:

1:如何在Spring的context.xml中像这样或任何其他方式使用它:

代码语言:javascript
复制
<bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
    <property name="typeHandlers">
     ...
    </property>
</bean>

2:如何用较少的代码(如'component-scan''MapperScannerConfigurer' )来配置所有枚举类型,而不需要列出每个枚举类型?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-07-06 01:58:08

1.通过以下方式设置您的mybatis-config.xml位置:

代码语言:javascript
复制
<bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
  <property name="dataSource" ref="dataSource" />
  <property name="configLocation" value="mybatis-config.xml" />
</bean>

2.如果使用java config,请尝试使用循环:

代码语言:javascript
复制
TypeHandlerRegistry typeHandlerRegistry = sqlSessionFactory.getObject().getConfiguration().getTypeHandlerRegistry();
for (Class<?> cls: EnumClassArrays) {
    typeHandlerRegistry.register(cls, new EnumOrdinalTypeHandler<>(cls))
}
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/25939370

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档