Search
Duplicate

typeAliases

typeAliases

ν΄λž˜μŠ€μ— λŒ€ν•œ 별칭을 μ •μ˜ν•˜μ—¬ XMLμ—μ„œ κ°„λ‹¨ν•˜κ²Œ μ‚¬μš©ν•  수 있게 ν•©λ‹ˆλ‹€.

typeAliases μ„€μ • 방법

mybatis μ—μ„œ Java 클래슀 전체이름(νŒ¨ν‚€μ§€λͺ….클래슀λͺ…)을 μ„€μ •ν•˜λŠ” 방법은 μ•„λž˜ 방법 쀑에 ν•˜λ‚˜λ‘œ μ μš©ν•  수 μžˆμŠ΅λ‹ˆλ‹€.
β€’
mybatis-config.xml
β€’
application.properties
β€’
@Alias μ–΄λ…Έν…Œμ΄μ…˜

mybatis-config.xml

β€’
μ„€μ • 파일 μœ„μΉ˜
β—¦
~/src/main/resources
β–ͺ
mybatis-config.xml
β€’
mybatis-config.xml
<?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE configuration PUBLIC "-//mybatis.org//DTD Config 3.0//EN" "https://mybatis.org/dtd/mybatis-3-config.dtd"> <configuration> <!-- μ„€μ • --> <settings> <!-- μ–Έλ”μŠ€μ½”μ–΄ μΌ€μ΄μŠ€μΈ μ»¬λŸΌμ„ 카멜 μΌ€μ΄μŠ€λ‘œ λ³€ν™˜ν•˜λŠ” μ„€μ • --> <!-- board_no - boardNo --> <setting name="mapUnderscoreToCamelCase" value="true"/> </settings> <!-- νƒ€μž… 별칭 μ„€μ • --> <typeAliases> <!-- ⭐ typeAlias : 별칭 μ„€μ • - alias : 별칭 - type : 별칭을 μ‚¬μš©ν•  클래슀 경둜 --> <typeAlias alias="User" type="com.aloha.mybatis.dto.User"/> <!-- ⭐ package : νŒ¨ν‚€μ§€ 경둜 μ§€μ • - name : νŒ¨ν‚€μ§€ 경둜 --> <package name="com.aloha.mybatis.dto"/> </typeAliases> </configuration>
XML
볡사
β€’
application.properties
# Mybatis μ„€μ • # Mybatis μ„€μ • 경둜 : ~/resources/mybatis-config.xml mybatis.config-location=classpath:mybatis-config.xml # Mybatis 맀퍼 파일 경둜 : ~/λ©”μΈνŒ¨ν‚€μ§€/mapper/**Mapper.xml mybatis.mapper-locations=classpath:mybatis/mapper/**/**.xml
Java
볡사
νƒ€μž… 별칭 package 경둜λ₯Ό μ„€μ •ν•˜λ©΄, ν•΄λ‹Ή νŒ¨ν‚€μ§€ μ•„λž˜μ˜ λͺ¨λ“  ν΄λž˜μŠ€λ“€μ„ 클래슀 μ΄λ¦„λ§ŒμœΌλ‘œ type 을 μ§€μ •ν• μˆ˜ μžˆμŠ΅λ‹ˆλ‹€.
β€’
typeAliases - package μ„€μ •
<resultMap id="λ§΅id" type="νŒ¨ν‚€μ§€λͺ….클래슀λͺ…"> </resultMap>
XML
볡사
β€’
typeAliases - package μ„€μ •
<!-- <resultMap id="λ§΅id" type="νŒ¨ν‚€μ§€λͺ….클래슀λͺ…"> --> <resultMap id="λ§΅id" type="클래슀λͺ…"> </resultMap>
XML
볡사
mybatis-config.xml λ§ˆμ΄λ°”ν‹°μŠ€ μ„€μ •νŒŒμΌμ„ λ”°λ‘œ λ§Œλ“€μ§€ μ•Šκ³ ,
application.properties 의 μ†μ„±μœΌλ‘œ λ°”λ‘œ μ μš©ν•  μˆ˜λ„ μžˆμŠ΅λ‹ˆλ‹€.
# Mybatis μ„€μ • # 컬럼λͺ…을 λ³€μˆ˜λͺ…μœΌλ‘œ μžλ™λ§€ν•‘ : board_no ➑ boardNo mybatis.configuration.map-underscore-to-camel-case=true # resultType μ†μ„±μ—μ„œ dto 객체 (νŒ¨ν‚€μ§€.클래슀λͺ…) ➑ (클래슀λͺ…) mybatis.type-aliases-package=com.aloha.mybatis.dto # Mybatis 맀퍼 파일 경둜 : ~/λ©”μΈνŒ¨ν‚€μ§€/mapper/**Mapper.xml mybatis.mapper-locations=classpath:mybatis/mapper/**/**.xml
Java
볡사

@Alias μ–΄λ…Έν…Œμ΄μ…˜

mybatis-config.xml λ˜λŠ” application properties 에 MyBatisκ°€ μ§€μ •λœ νŒ¨ν‚€μ§€ λ‚΄μ˜ ν΄λž˜μŠ€μ— λŒ€ν•΄ νƒ€μž… 별칭을 μžλ™μœΌλ‘œ μŠ€μΊ”ν•˜λ„λ‘ μ„€μ •ν•΄μ•Ό @Alias λ₯Ό μ‚¬μš©ν•  수 μžˆμŠ΅λ‹ˆλ‹€.
쿼리 κ²°κ³Όλ₯Ό λ§€ν•‘ν•  각 κ°μ²΄μ—μ„œ, @Alias μ–΄λ…Έν…Œμ΄μ…˜μœΌλ‘œ 별칭을 μ„€μ •ν•˜λŠ” 방법
package com.aloha.mybaits.dto; ... @Data @Alias("Users") public class Users { private Long no; private String username; private String password; private String name; private String email; private Date createdAt; private Date updatedAt; private int enabled; }
Java
볡사
β€’
@Alias("Users") μ„€μ •
<!-- ⭐ typeAliases μ„€μ •ν•˜μ§€ μ•Šμ€ 경우 - νŒ¨ν‚€μ§€λͺ….클래슀λͺ… --> <select id="select" resultType="com.aloha.mybatis.dto.Users"> SELECT * FROM user WHERE username = #{username} </select>
XML
볡사
β€’
@Alias("Users") μ„€μ •
<!-- ⭐ typeAliases μ„€μ •ν•œ 경우 - 별칭 (Users) --> <select id="select" resultType="Users"> SELECT * FROM user WHERE username = #{username} </select>
XML
볡사