Java类扩展了@Configuration注释的Spring Bean

时间:2019-12-03 10:19:32

标签: java spring dependency-injection

我编写了以下代码,它可以工作,但是我不确定为什么。 我想要的是自定义spring-data-jdbc的jdbc配置,并用另一个配置扩展了配置,但是... IoC容器中到底发生了什么?

JdbcConfiguration@Configuration的带注释的bean,它实例化一个 JdbcCustomConversions,并且我能够重写此行为,将整个配置子类化,并指定自己的方法,但我不确定为什么。

@Configuration
public class CustomJdbcConfiguration extends JdbcConfiguration{

    @Override
    protected JdbcCustomConversions jdbcCustomConversions() {
        return new JdbcCustomConversions(Collections.singletonList(CLobToStringConverter.INSTANCE));
    }

    @ReadingConverter
    enum CLobToStringConverter implements Converter<Clob, String>{

        INSTANCE;

        @Override
        public String convert(Clob source) {

            try {
                return IOUtils.toString(source.getCharacterStream());
            } catch (IOException | SQLException e) {
                throw new RuntimeException(e);
            }
        }

    }
}

0 个答案:

没有答案