Skip to content

Commit

Permalink
DATAJDBC-492 - Use JdbcMappingContext in AbstractJdbcConfiguration in…
Browse files Browse the repository at this point in the history
…stead of RelationalMappingContext.

We use now a more concrete type in the configuration to avoid clashes when Spring Data R2DBC is on the class path.
  • Loading branch information
mp911de committed Feb 20, 2020
1 parent d1df76c commit 95428b7
Show file tree
Hide file tree
Showing 2 changed files with 8 additions and 9 deletions.
Expand Up @@ -53,10 +53,8 @@
@Configuration(proxyBeanMethods = false)
public class AbstractJdbcConfiguration {

// private @Autowired ObjectProvider<RelationResolver>

/**
* Register a {@link RelationalMappingContext} and apply an optional {@link NamingStrategy}.
* Register a {@link JdbcMappingContext} and apply an optional {@link NamingStrategy}.
*
* @param namingStrategy optional {@link NamingStrategy}. Use {@link NamingStrategy#INSTANCE} as fallback.
* @param customConversions see {@link #jdbcCustomConversions()}.
Expand All @@ -81,7 +79,7 @@ public JdbcMappingContext jdbcMappingContext(Optional<NamingStrategy> namingStra
* @return must not be {@literal null}.
*/
@Bean
public JdbcConverter jdbcConverter(RelationalMappingContext mappingContext, NamedParameterJdbcOperations operations,
public JdbcConverter jdbcConverter(JdbcMappingContext mappingContext, NamedParameterJdbcOperations operations,
@Lazy RelationResolver relationResolver, JdbcCustomConversions conversions) {

DefaultJdbcTypeFactory jdbcTypeFactory = new DefaultJdbcTypeFactory(operations.getJdbcOperations());
Expand All @@ -92,7 +90,7 @@ public JdbcConverter jdbcConverter(RelationalMappingContext mappingContext, Name
/**
* Register custom {@link Converter}s in a {@link JdbcCustomConversions} object if required. These
* {@link JdbcCustomConversions} will be registered with the
* {@link #jdbcConverter(RelationalMappingContext, NamedParameterJdbcOperations, RelationResolver, JdbcCustomConversions)}.
* {@link #jdbcConverter(JdbcMappingContext, NamedParameterJdbcOperations, RelationResolver, JdbcCustomConversions)}.
* Returns an empty {@link JdbcCustomConversions} instance by default.
*
* @return will never be {@literal null}.
Expand All @@ -113,7 +111,7 @@ public JdbcCustomConversions jdbcCustomConversions() {
*/
@Bean
public JdbcAggregateTemplate jdbcAggregateTemplate(ApplicationContext applicationContext,
RelationalMappingContext mappingContext, JdbcConverter converter, DataAccessStrategy dataAccessStrategy) {
JdbcMappingContext mappingContext, JdbcConverter converter, DataAccessStrategy dataAccessStrategy) {

return new JdbcAggregateTemplate(applicationContext, mappingContext, converter, dataAccessStrategy);
}
Expand All @@ -127,7 +125,7 @@ public JdbcAggregateTemplate jdbcAggregateTemplate(ApplicationContext applicatio
*/
@Bean
public DataAccessStrategy dataAccessStrategyBean(NamedParameterJdbcOperations operations, JdbcConverter jdbcConverter,
RelationalMappingContext context, Dialect dialect) {
JdbcMappingContext context, Dialect dialect) {
return new DefaultDataAccessStrategy(new SqlGeneratorSource(context, jdbcConverter, dialect), context,
jdbcConverter, operations);
}
Expand Down
Expand Up @@ -21,6 +21,7 @@
import org.springframework.context.annotation.Configuration;
import org.springframework.data.jdbc.core.convert.DataAccessStrategy;
import org.springframework.data.jdbc.core.convert.JdbcConverter;
import org.springframework.data.jdbc.core.mapping.JdbcMappingContext;
import org.springframework.data.jdbc.mybatis.MyBatisDataAccessStrategy;
import org.springframework.data.relational.core.dialect.Dialect;
import org.springframework.data.relational.core.mapping.RelationalMappingContext;
Expand All @@ -39,12 +40,12 @@ public class MyBatisJdbcConfiguration extends AbstractJdbcConfiguration {

/*
* (non-Javadoc)
* @see org.springframework.data.jdbc.repository.config.AbstractJdbcConfiguration#dataAccessStrategyBean(org.springframework.jdbc.core.namedparam.NamedParameterJdbcOperations, org.springframework.data.jdbc.core.convert.JdbcConverter, org.springframework.data.relational.core.mapping.RelationalMappingContext)
* @see org.springframework.data.jdbc.repository.config.AbstractJdbcConfiguration#dataAccessStrategyBean(org.springframework.jdbc.core.namedparam.NamedParameterJdbcOperations, org.springframework.data.jdbc.core.convert.JdbcConverter, org.springframework.data.jdbc.core.mapping.JdbcMappingContext)
*/
@Bean
@Override
public DataAccessStrategy dataAccessStrategyBean(NamedParameterJdbcOperations operations, JdbcConverter jdbcConverter,
RelationalMappingContext context, Dialect dialect) {
JdbcMappingContext context, Dialect dialect) {

return MyBatisDataAccessStrategy.createCombinedAccessStrategy(context, jdbcConverter, operations, session, dialect);
}
Expand Down

0 comments on commit 95428b7

Please sign in to comment.