Spring
-
[Spring]Java ConfigurationSpring 2023. 12. 14. 22:19
나는 legacy에 xml기반 configuration 보다는 java configuration을 선호하는 편이다. 이유는 xml 보다 java소스로 보는게 좋으니까 ㅎㅎㅎㅎ @Configuration 어노테이션을 class 상단에 선언해줌 @Configuration public class CommonConfiguration { } 그리고 이러한 Configuration을 스캔해서 실행하는 일종의 RootConfiguration이 있어야한다. @Configuration @ComponentScan(basePackages= {"패키지경로"}) public class RootConfiguration{ } Configuration의 종류는 아래정도로 xml과 맵핑되지 않을까 싶다. context-aspect.x..
-
[Spring] 트랜잭션의 이해Spring 2023. 2. 18. 17:37
너무 오랜만에 글을.. 최근들어 프로젝트가 너무 바빠서...자기 개발보다 업무처리에 정신이 하나도 없었다..(핑계가득..^^) 오늘은 Spring에서 제공하는 트랜잭션에 대해 정리해보려 한다. 스프링을 사용하다보면 기본적으로 트랜잭션 관리를 스프링에서 알아서(?) 처리해주기 때문에 개발자들이 크게 신경쓰지 않고 개발하는 경우가 많다. 하지만 최근에 비지니스 로직에서 에러가 발생했을때 트랜잭션의 문제로 일부 데이터만 생성되는 일이 있었다. 이때 어? 트랜잭션 처리가 왜 이러지? 라는 의문은 들었지만 명확하게 알지 못해 내용을 찾아 정리하게 됬다. (ㅎㅎㅎㅎㅎㅎ 내 자신 너무 부족함이 넘친다) 트랜잭션이란? 나름 쉽게 얘기하면 트랜잭션(Transaction)이란 데이터베이스에서 수행하는 작업 단위를 의미한다..
-
[Spring] Mybatis - Mapped Statements collection does not contain valueSpring 2022. 8. 29. 13:51
프로젝트 중간에 생긴 사소한(?) Mybatis 에러에 대해 기록하고 넘어가겠다. ### Cause: java.lang.IllegalArgumentException: Mapped Statements collection does not contain value for 'MYBATIS ID' org.apache.ibatis.exceptions.PersistenceException: 나는 MYBATIS를 통해 INSERT시에 해당 에러가 나타났다. 이 에러는 몇가지 사항에 대한 에러를 나타낸다. 1. Mapper의 id가 상이한 경우 => DAO or MAPPER를 통해 호출한 id와 실제 xml파일에 정의된 id가 상이한 경우. 2. id뿐만아니라 xml 자체에 namespace와 mapper에서 호출하는 ..