Java 44

MyBatis foreach를 이용한 배열 파라미터 삽입하기

쿼리를 작성해야 할때 전달받은 인자값을 바탕으로 반복적인 SQL 구문을 작성할때 유용하다. 대표적으로 체크박스등과 같은 인자값이 동일한 다수의 배열 데이터를 검색조건에 반영해야 할때가 있는데, 이때 OR 구문 또는 IN 구문으로 작성하면 편리하게 사용할 수 있다. 다만 foreach의 경우 인자값으로 List와 Array 형태의 collection 타입만 사용이 가능하다. foreach 기본 문법 형태 collection = 전달받은 인자. List나 Array 형태만 가능 item = 전달받은 인자값을 alias 명으로 대체 open = 해당 구문이 시작될때 삽입할 문자열 close = 해당 구문이 종료될때 삽입할 문자열 separator = 반복 되는 사이에 출력할 문자열 index=반복되는 구문 번..

Java 2021.02.13

Chrome 양식 다시 제출 확인 ERR_CACHE_MISS 해결방법

Chrome에서 POST 요청으로 페이지 이동후 뒤로 가기를 하면 아래와 같은 확인 페이지를 제공하도록 되어있습니다. ​Spring security를 사용하면 headers cacheControl를 disabled 처리함으로써 해결합니다. @Configuration @EnableWebSecurity public class WebSecurityConfig extends WebSecurityConfigurerAdapter { @Override protected void configure(HttpSecurity http) { http // ... .headers(headers -> headers .cacheControl(cache -> cache.disable()) ); } } Cache Control 문서 ..

Java/Spring 2021.01.27

mybatis에서 selectKey 사용하는 방법

예를 들어 쿼리 작업을 진행하보면 먼저 쿼리 한줄을 INSERT 을 하고 INSERT 된 구문의 증가된 키 값을 가지고 와서 다음 쿼리에서 바로 사용해야 할 경우가 있다. 이때 mybatis에서 제공해주는 selectKey를 사용 하면 된다. selectKey를 이용하면 별도로 해당 키 값을 select 하는 구문을 등록할 필요 없이 selectKey 구문에서 해결할 수 있다. --mysql, mariaDB create table Board( rno int not null auto_increment, boardNo varchar(20) not null, title varchar(50) not null, content text not null, primary key(rno), unique(boardNo) ..

Java 2020.10.09