목차 Mybatis에서 if else 사용 하기 Spring Boot와 Mybatis를 사용해 SQL문을 작성하게 될 때 동적으로 SQL을 만들어야 하는 경우가 반드시 생기기 마련입니다. 보통 조건문을 사용할 때는 if와 else문을 사용하게 되는데요. 아쉽지만 Mybatis에는 if문은 존재하지만 else문을 사용할 수 없습니다. Mybatis에서 if else 문법과 동일하게 조건문을 사용할 수 있는 방법이 존재하는데 바로 choose 문법입니다. 이 choose 문법을 어떻게 if else 문법과 동일하게 사용해야 하는지 알아보도록 하겠습니다. 조건이 하나인 경우 조건이 한 가지인 경우 아래와 같이 사용할 수 있습니다. // if와 동일 // 실행할 구문 입력 // else와 동일 // 실행할 구문..
목차 ORACLE - DEFINE. SELECT에서 사용 하기 SQL을 작성하다 보면 SELECT문을 사용할 때 WHERE절에 동적으로 변수를 받아야 하는 일이 많습니다. Tool을 사용할 경우에 계속해서 변수들의 값을 변경해가며 테스트를 할 일이 생기기 마련인데요. 서브 쿼리를 많이 사용하게 되는 경우, 하나의 SQL에서 동일한 값의 변수들을 여러 번 대입하여 사용하는 일이 생깁니다. 일일이 변수들의 값을 변경하게 되면 시간도 낭비되고 실수를 할 수도 있지요. 그럴 때 DEFINE을 사용하여 변수들의 값을 할당해주면 실수도 적어지고 매우 편리합니다. Spring Boot에 Mybatis를 사용하여 SQL을 작성하는 경우에도 필요한데요. 사용방법에 대해서 알아보도록 하겠습니다. DEFINE 변수 선언 먼..
목차 WHERE IN 조건에서 1000개 이상 값 넣기 ORA-01795 : maximum number of expressions in a list is 1000 오라클을 사용할 때 이 에러를 보신 적이 있나요? 왜 이런 에러가 나오는지 그 이유와 해결방법에 대해 알아보도록 하겠습니다. ORA-01795 에러가 나는 원인 다음과 같이 SQL을 사용한다고 가정해보겠습니다. SELECT * FROM TEST_TABLE WHERE TEST_IDX IN ( 1, 2, 3, 4, 5, 6, 7, 8, 9, 10,..., 997, 998, 999, 1000, 1001, 1002) ; TEST_IDX 값을 1~1002까지 조회해야 할 일이 있다고 가정하고 SQL문을 실행합니다. 그리고 에러가 납니다. ORA-0179..
목차 List 배열을 n개의 배열로 분할하는 방법 코딩을 하다 보면 배열 한 개에서 특정 개수별로 쪼개서 여러 개의 배열로 분할하여 사용해야 하는 경우가 있습니다. 어떻게 하는지 헷갈려하시는 분들이 꽤 많은데요. 배열을 여러 개로 분할하는 방법에 대해서 알아보도록 하겠습니다. 배열 선언하기 일단 아래와 같이 105개의 값을 가지고 있는 배열이 있고 배열을 10개 단위로 쪼개서 여러 개의 배열을 만들어야 한다고 가정해보도록 하겠습니다. List list = new List(); for (int i = 1; i 0) { text += ", "; } text += lists[i][j].ToString(); } Console.WriteLine((i + 1).ToString() + "번째 배열 값 : " + te..
목차 C# 상속 개념 쉽게 이해하기 프로그래밍에서의 상속 개념은 부모 클래스의 속성들을 자식 클래스에서 받을 수 있는 것을 의미합니다. 메서드나 변수들 말이죠. 상속을 해주는 클래스가 부모 클래스이고, 상속을 받는 클래스를 자식 클래스라고 명칭 합니다. 게임을 예로 들면 쉬울 것 같네요. 롤 게임으로 상속에 대해서 간단한 예제를 구현해보도록 하겠습니다. 가렌 vs 애니 구도로 만들어보도록 하죠. 부모 Class 만들기 먼저 부모 클래스를 만들어보겠습니다. 가렌과 애니는 모두 챔피언이죠? 부모 클래스로 챔피언 클래스를 만들어주고, 챔피언들의 공통적인 부분들을 구현해줍니다. 대표적인 속성으로는 챔피언의 이름, 스킨, 소속팀 정도가 되겠고 챔피언의 행동으로는 크게 이동, 공격, 스킬 정도로 나누고 실 실행될 ..
Java로 백엔드를 개발할 때 주로 Mybatis를 많이 사용합니다. Mybatis를 사용하다 보면 자주 등장하는 에러가 있습니다. 바로 SQL 92 토큰 에러인데요. 원인은 문법이 틀려서 그렇습니다. 해결방법은 아주 간단합니다. 원인 SELECT * FROM USER_INFO WHERE USER_ID = {#user_ID} {#user_ID} 부분의 문법이 틀려서 그런 건데 바로 대괄호 때문입니다. 잘 찾아보시면 나올겁니다! 아마도 오타일 가능성이 99% 정도 되겠죠.. ^^; 해결방법 SELECT * FROM USER_INFO WHERE USER_ID = #{user_ID} 정상적인 문법으로 고치면 다시 잘 작동합니다. 여기서 꿀팁 한 가지! 이럴 때 바르게 찾는 방법은 에러가 나는 xml 파일에 '..