본문 바로가기

ALL

(131)
MyBatis: Mapped Statements collection already contains value for ~ 에러 MyBatis를 사용하여 API 서버를 개발하던 중, 다음과 같은 에러를 만났다. Mapped Statements collection already contains value for ~ 검색을 해보니 중복되는 Id가 존재할 경우 이러한 에러가 발생한다고 해서, 마이바티스의 맵퍼 xml 파일을 뒤져보았다. ... ... ... 그 결과, 동일한 Id를 가진 select 구문을 찾았고 이를 수정하니 에러가 발생하지 않았다.
MyBatis: Result Maps collection already contains value for ~ 에러 MyBatis를 사용하여 API 서버를 개발하던 중, 다음과 같은 에러를 만났다. Result Maps collection already contains value for ~ 검색을 해보니 중복되는 Id가 존재할 경우 이러한 에러가 발생한다고 해서, 마이바티스의 맵퍼 xml 파일을 뒤져보았다. ... ... ... 그 결과, 동일한 Id를 가진 resultMap 구문을 찾았고 이를 수정하니 에러가 발생하지 않았다.
자바스크립트: Invalid shorthand property initializer 에러 VueJs 공부를 하던 중 다음과 같은 에러가 발생하면서 코드가 제대로 동작하지 않았다. 원인을 찾아보니, 다음 코드가 원인이었다. var vm = new Vue({ ... methods = { showPersonInfo: function (person){ alert(person.name) } } ... }).$mount('#app') 구조체 객체를 만들 때, 속성에 값을 대입하기 위해서는 '='가 아니라 ':'를 사용해야한다. 다음과 같은 코드를 사용하면 에러가 나는 것이다. // 에러 코드 var myObject = { property = 'value' } // 정상 코드 var myObject = { property: 'value' } 결국 문제의 코드를 다음과 같이 수정하여 에러를 해결하였다.
[알고리즘] SW Expert Academy 10033. 카드 뒤집기 문제풀이(사고의 흐름) 문제를 보고 처음에는 어떻게 풀어야할지 바로 감이 오지 않았다. 문자열과 문자열을 바꿀수 있는 동작을 주고, 동작이 최대 몇번 수행되어야 하는지 조건이 주어졌지만, 바로 풀이 코드가 떠오르지 않았다. 이런 상황에서는 샘플을 만들고 이를 조건대로 수행하며 법칙을 찾아내는 편이다. 그래서 예제 문자열을 조건에 따라 동작을 수행하여 보았다. BWBWBW // 시작 문자열 WBBWBW // 동작수행 1 WBWBBW // 동작수행 2 WWBBBW // 동작수행 3 WWBBWB // 동작수행 4 WWBWBB // 동작수행 5 WWWBBB // 동작수행 6 이렇게 샘플을 한번 돌려보니, 바로 직감이 떠올랐다. "모든 수행의 끝에는 결국 모든 W는 왼쪽으로 가고, 모든 B는 오른쪽으로 가는구나!..
3-1) 스프링 MVC 기초: WebApplicationInitializer, WebMvcConfigurerAdapter, @EnableWebMvc, @Controller, InternalResourceViewResolver, jsp - MVC 패턴 MVC 패턴은 다양한 웹 프레인워크에 적용된 디자인 패턴이다. 클라이언트로부터 요청을 받고, 요청에 맞는 처리를 하고, 응답을 만드는 과정을 분리하여 유연하고 효율적으로 코드를 작성할 수 있도록 한다. 이때 요청에 따른 처리를 하는 부분을 Model, 응답을 만드는 부분을 View, 요청을 받는부분을 Controller라고 하고, 각 앞글자를 따서 MVC 패턴이라고 부른다. Model(모델) 어플리케이션의 데이터나 로직을 처리하는 역할 View(뷰) 클라이언트에 반환할 응답을 생성하는 역할 Controller(컨트롤러) 클라이언트의 요청에 따라 모델과 뷰의 호출을 제어하는 역할 Spring MVC는 MVC 패턴을 채택한 프레임 워크로, 스프링 웹 어플리케이션 개발에 필수적으로 사용된다. ..
[알고리즘] SW Expert Academy 10032. 과자 분배 문제 풀이 (사고의 흐름) 문제를 보고 가장 처음든 생각은 N이 K로 딱 나누어 떨어지면 모두 같은 수의 과자를 먹을 수 있다는 것이다. 그리고 자연스럽에 N이 K로 딱 나누어 떨어지지 않으면 어떤지 생각해 보았다. 다르게 말하면 N이 K로 나누었을 때, 나머지 Z(K보다 작다)가 있다는 말이고 Z개의 과자는 Z명의 사람들에게 1개씩 줄 수 있다. 즉, Z명의 사람들은 과자 1개씩을 더 받게되고, K-Z명의 사람들은 과자를 더 받지 못한다. 이 상황에서 과자 수 차이는 1이다. 결론적으로 다음과 같다고 할 수 있다. N이 K로 나누어 떨어질 때(N%K == 0), 과자수 차이는 0 N이 K로 나누어 떨어지지 않을 때(N%K != 0), 과자수 차이는 1 정답 코드 #include iostream int ..
자바: java.util.ConcurrentModificationException 에러 자바로 작업을 하던 중 다음과 같은 에러를 만났다. Exception in thread "main" java.util.ConcurrentModificationException at java.util.ArrayList$Itr.checkForComodification(ArrayList.java:909) at java.util.ArrayList$Itr.next(ArrayList.java:859) ... 구글 검색을 해보니 List와 같은 객체를 for each 문을 돌릴 때, 해당 객체를 수정하면 발생한다고 한다. 그리고 보통 해당상황이 발생하는 경우는 크게 두가지 경우가 있다고 한다. 싱글 스레드 환경에서 for each문 중간에 객체를 수정하는 경우 멀티 스레드 환경에서, 다른 스레드에서 객체 값이 수정된..
Azure CosmosDB 에러: java.lang.IllegalArgumentException: Id contains illegal chars. Azure CosmosDB를 활용하여 개발을 하던 중, 다음과 같은 에러가 발생하였다. java.lang.IllegalArgumentException: Id contains illegal chars. id에 들어가서는 안되는 문자열이 들어간거 같아서 확인을 해보니, id에 '#' 문자를 포함하여서 생긴 문제였다. 확인 결과 다음과 같은 문자들을 id에 사용하면 안된다. The following characters are restricted and cannot be used in the Id property: '/', '\\', '?', '#' 출처: https://docs.microsoft.com/en-us/dotnet/api/microsoft.azure.documents.resource.id?view=..