-
[MyBatis] resultType 객체 별칭(alias) 관리Back-End/Spring Legacy 2022. 11. 16. 11:12
Mapper.xml에서 쿼리문을 통해 값을 받아올 때 resultType을 아래와 같이 패키지명 그대로 사용할 수 있고 따로 별칭을 정해 resultType="aa" 이런식으로 작성할 수 있다.
그럼 어디서 설정해야할까? 그 경로를 따라가보자.
📌 1. mybatis-config.xml과 같이 설정 파일을 하나 만든다.
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0/EN" "http://mybatis.org/dtd/mybatis-3-config.dtd"> <configuration> <typeAliases> <typeAlias alias="testVO" type="com.test.testVO"/> </typeAliases> </configuration>
위의 코드와 같이 <configuration> 태그 안에 aliase로 지정할 값들을 넣어주면 되는 형태이다. type은 패키지 명, 즉 클래스 경로를 입력하면 되고 alias에 지정하고 싶은 별칭을 입력한다.
📌 2. application.properties에 설정 경로를 적어준다.
<!-- ## Mapper setup ## --> <bean id="mysqlSqlSessionFactory" class="org.mybatis.spring.SqlSessionFactoryBean"> <property name="dataSource" ref="mysqlDataSource" /> <property name="configLocation" value="/WEB-INF/mybatis-mysql-config.xml" /> <property name="typeAliasesPackage" value="kr.happyjob.study" /> <!-- property name="mapperLocations" value="classpath*:kr/happy/jobkorea/**/dao/mapper/*Mapper.xml" /--> <property name="mapperLocations" value="classpath*:sql/*/*Mapper.xml" /> </bean>
위에서 중요한 코드는 바로 <property name="configLocation" value="/WEB-INF/mybatis-mysql-config.xml" /> 이 코드일 것이다. 우리가 alias를 설정해둔 mybatis-mysql-config.xml 경로를 <bean>에 property로 설정한 것.
📌 3. Mapper에서 resultType을 alias로 사용
<mapper namespace="kr.happyjob.study.admsst.dao.SwFileuploadDao2"> <select id="listFileupload" resultType="FileuploadModel" > </select> </mapper>
위의 코드와 같이 select 쿼리문에서 반환할 값으로 resultType 을 지정해 주는데 여기서, 클래스 경로가 아닌! alias를 적어줬다.
반응형'Back-End > Spring Legacy' 카테고리의 다른 글
[jsp] <%@ include%>와 jsp:include 차이 (0) 2022.11.30 [Spring MyBatis] selectKey 사용하기 (0) 2022.11.17 [Spring Framework] 정의와 특징 ( DI, IoC, AOP) (0) 2022.09.20 [5-ch18 Spring AOP] 설정, execution, args, @Around, @before, @AfterThrowing (0) 2022.09.07 [5-ch18 Spring] AOP 개념, 용어(JoinPoint, Pointcut, Advice..) (0) 2022.09.07