개발은 하는건가..

mybatis DTO 클래스 aliasesPackage 지정 본문

SpringBoot , Thymeleaf

mybatis DTO 클래스 aliasesPackage 지정

수동애비 2023. 5. 25. 18:17
반응형

mybatis 의 mapper xml 에서 resultType, parameterType 지정 시 패키지 경로까지 쓰지 않고 클래스명만 입력하여 사용할 경우 Config 클래스의  SessionFactory.setTypeAliasesPackage() 로 경로를 지정하면 된다.

setTypeAliasesPackage(com.svc.dto);

<select id="getUser" resultType="com.svc.dto.UserDTO">   
     => <select id="getUser" resultType="UserDTO">  이와 같이 사용할 수 있음.

@Configuration
public class MariaDBConfig {
    @Bean
    public SqlSessionFactory sqlSessionFactory(DataSource dataSource) throws Exception {
        final SqlSessionFactoryBean sessionFactory = new SqlSessionFactoryBean();
        sessionFactory.setDataSource(dataSource);

        PathMatchingResourcePatternResolver resolver = new PathMatchingResourcePatternResolver();
        sessionFactory.setMapperLocations(resolver.getResources("classpath:mappers/*.xml"));
        sessionFactory.setTypeAliasesPackage(DTO 패키지경로);

        Resource myBatisConfig = new PathMatchingResourcePatternResolver().getResource("classpath:mybatis-config.xml");
        sessionFactory.setConfigLocation(myBatisConfig);

        return sessionFactory.getObject();
    }
}

 

Comments