I have a NetworkUsageService class that uses NetworkUsageMapper to access a database. The Mapper class is automatically passed to the service class.
I need to access the database while creating the service class, so I am doing something like this:
private int someField;
@Autowired
private NetworkUsageMapper networkUsageMapper;
public NetworkUsageService() {
someField = networkUsageMapper.getSomeResultFromDB();
}
However, this does not work, as I get an exception when creating a bean service. Is there a way to use autonomous dependency when building an object?
EDIT: this is my beans configuration on request:
<context:component-scan base-package="mypackage" />
<mybatis:scan base-package="mypackage.mappers" />
<mvc:annotation-driven />
<context:property-placeholder location="classpath:/jdbc.properties"/>
<bean id="sqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean">
<property name="dataSource" ref="dataSource" />
<property name="mapperLocations" value="classpath:mappers/*.xml" />
<property name="typeAliasesPackage" value="mypackage.transfer" />
</bean>
<bean id="transactionManager" class="org.springframework.jdbc.datasource.DataSourceTransactionManager">
<property name="dataSource" ref="dataSource" />
</bean>
<bean id="dataSource"
class="org.springframework.jdbc.datasource.DriverManagerDataSource">
<property name="driverClassName" value="${jdbc.driverClassName}" />
<property name="url" value="${jdbc.url}" />
<property name="username" value="${jdbc.username}" />
<property name="password" value="${jdbc.password}" />
</bean>
source
share