Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
Tags
- 1차원 DP
- 2차원 dp
- 99클럽
- @Builder
- @GeneratedValue
- @GenericGenerator
- @NoargsConstructor
- @Transactional
- Actions
- Amazon EFS
- amazon fsx
- Android Studio
- ANSI SQL
- ApplicationEvent
- assertThat
- async/await
- AVG
- AWS
- Azure
- bind
- builder
- button
- c++
- c++ builder
- c03
- Callback
- case when
- CCW
- chat GPT
- CICD
Archives
- Today
- Total
기록
MyBatis/ bind 태그 사용법 본문
MyBatis의 bind
태그 사용법
MyBatis는 SQL 쿼리를 작성하는 데 유용한 다양한 태그를 제공합니다. 그 중 하나가 bind
태그입니다. bind
태그는 동적 SQL을 작성할 때 변수를 바인딩하여 쿼리를 더 유연하게 만들어 줍니다.
최근 프로젝트에서 복잡한 SQL 쿼리를 작성하면서, bind
태그를 활용하면 SQL 쿼리를 더 깔끔하게 작성할 수 있다는 것을 알게 되었습니다. 이를 계기로, 이번 포스팅에서는 bind
태그의 사용법과 예제를 살펴보겠습니다.
1. bind
태그란?
bind
태그는 SQL 쿼리에서 사용할 변수를 정의하고 값을 바인딩하는 데 사용됩니다. 이를 통해 SQL 쿼리의 가독성을 높이고, 동적으로 변수를 설정할 수 있습니다.
2. 사용법
bind
태그의 기본 사용법은 다음과 같습니다.
<bind name="변수명" value="값" />
- name: 바인딩할 변수의 이름
- value: 변수에 할당할 값
4. 예제
(1) 다른 변수에 값 할당
다음은 bind
태그를 사용하여 사용자 정보를 조회하는 예제입니다.
<select id="getUserById" resultType="User">
<bind name="userId" value="#{id}" />
SELECT * FROM users WHERE id = #{userId}
</select>
위의 예제에서, userId
라는 변수를 id
값으로 바인딩하고, 해당 변수를 사용하여 SQL 쿼리를 작성합니다. 이를 통해 SQL 문을 더 깔끔하게 유지할 수 있습니다.
(2) LIKE 검색에 사용
예를 들어, 조건에 따라 조회할 필드를 동적으로 변경하고 싶을 때 다음과 같이 사용할 수 있습니다.
<select id="searchUsers" resultType="User">
<bind name="searchKeyword" value="'%' + #{keyword} + '%'" />
SELECT * FROM users WHERE name LIKE #{searchKeyword}
</select>
이 예제에서는 사용자가 입력한 키워드를 기준으로 사용자 이름을 검색합니다. searchKeyword
변수에 keyword
값을 바인딩하여 SQL 쿼리에 활용합니다.
'Web > Spring' 카테고리의 다른 글
CORS 오류 해결하기: Spring Boot와 Swagger (0) | 2024.11.11 |
---|---|
[Spring] URI 기반 권한제어 : Spring Boot 필터 및 Swagger 설정 (0) | 2024.11.04 |
경험치 시스템 구현(2): 인터페이스를 사용한 동적 경험치 부여 (0) | 2024.06.17 |
경험치 시스템 구현(1): 어드바이스와 커스텀 어노테이션 활용 (0) | 2024.06.10 |
[SpringBoot] 작업 환경 분리: spring.profiles.active 옵션 활용 (0) | 2024.03.18 |
Comments