전체 글 94

JavaScript - CheckBox 전체 선택/해제

예전에 작업했던 내용들을 기억/기록하기 위해 남기는 포스팅입니다. 체크박스 전체 선택/해제 + 하부 선택에 따른 전체 선택 체크박스 활성/비활성 기능 JavaScript 코드 $(function(){ //기존 선택된 데이터 받아온다면 설정 setCheckAll(); //전체 체크박스 선택 시 $('#checkbox_all').on('change', function () { $(this).parents('.list_agree').find('input:checkbox').prop('checked', $(this).prop('checked')); }); //전체 외 체크박스 선택 시 $('.list_agree').find('input:checkbox').not('#checkbox_all').on('change..

javascript 이벤트 취소(unbind)

예전에 작업했던 내용들을 기억/기록하기 위해 남기는 포스팅입니다. 공동으로 작업을 하다 보면 생기는 문제들이 있습니다. 이번 포스팅의 경우 생긴 문제는 '퍼블리셔'가 만들어준 html과 javascript를 개발에 입히는 과정에서 javascript 이벤트가 서로 겹치는 문제가 발생했습니다. 상황을 예로 설명드리면, 글의 제목을 클릭하면 글 내용이 펼쳐지고, 다시 누르면 접히는 이벤트가 있습니다. 퍼블리셔분이 친절하게도 해당 이벤트 처리를 해 주었지만 개발에 해당 내용을 적용하는 과정에서 글 제목 클릭 시 조회수 추가 및 글 내용 및 첨부파일 등을 가져오는 작업이 추가되어야 했습니다. 퍼블리셔와 개발자가 javascript를 각각 관리하기에 임의로 퍼블리셔의 코드를 손대기도 어려운 상황이었습니다. 그래서..

javascript(jquery)로 table 행 병합(rowspan)

예전에 작업했던 내용들을 기억/기록하기 위해 남기는 포스팅입니다. 테이블 형태의 데이터를 가져와서 동일한 내용의 행을 병합하는 작업을 서버단에서 하지 않고 JavaScript를 이용하면 조금 더 편해진다. JavaScript 코드 $.fn.mergeClassRowspan = function (colIdx) { return this.each(function () { var that; $('tr', this).each(function (row) { $('td:eq(' + colIdx + ')', this).filter(':visible').each(function (col) { if ($(this).attr('class') == $(that).attr('class')) { rowspan = $(that).a..

javascript(jquery)로 폼 생성 및 Submit

예전에 작업했던 내용들을 기억/기록하기 위해 남기는 포스팅입니다. 폼 생성 및 Submit function postFormMakeSubmit(actionUrl, params) { $makeFrm = $(''); for (var key in params) { if (params.hasOwnProperty(key)) { $makeFrm.append(''); } } $('body').append($makeFrm); $makeFrm.submit(); } 폼 생성 및 새창으로 Submit function postFormMakeSubmitWindowOpen(actionUrl, params, targetName, openOption) { try{ var pop = window.open('about:blank', ta..

이케아 빨래바구니를 재활용 분리수거함으로 활용하기

이제는 쓰레기 분리수거는 필수입니다(환경을 위해서도, 법적으로도). 하지만 분리수거를 하려면 공간이 필요합니다. 플라스틱, 유리, 캔, 종이 등등을 분리하여 담아 둘 공간 말입니다. (대부분의 아파트가 1주일에 한두 번 정도 재활용 쓰레기를 배출하는 날로 지정하기에 더욱 모아 둘 공간이 필요합니다.) 결혼 초기에는 3개로 분리된 통이 세로로 쌓여진 형태의 분리수거함을 사용했습니다. 3개의 통은 각각 플라스틱, 종이, 비닐 이렇게 분류를 하여 사용했고 유리나 캔의 경우처럼 배출양이 적은 품목은 종이/비닐 분류함에 함께 넣어 활용했습니다. 결혼 전부터 4~5년간 사용한 것으로 만족도 높게 사용했었습니다. 하지만 작은 평수의 집에 살고 있는 저에게 분리수거 공간을 따로 마련하는 것은 너무 힘든 일이었습니다. ..

냐냐한 생활 2019.10.16

Spring Boot - Security 사용하기 (인메모리)

아래 소스들은 이전 포스팅 중 Spring Boot + MyBatis 프로젝트 연습의 MyBatis - Join 매핑하기 소스 기준으로 추가된 내용입니다. 참고하세요. 이번 포스팅에서는 Spring 공식 가이드 내용 기준으로 Security를 설정해보기로 했습니다. 실제 개발 시에는 인메모리로 사용하지 않겠지만 DB로 접근하여 로그인하는 부분은 차후 진행하기로 하고 우선은 인메모리를 사용하는 Spring 공식 가이드를 따라 해 보았습니다. Spring Boot - Security 사용 및 인메모리 설정 1. pom.xml에 추가 ... org.springframework.boot spring-boot-starter-security ... 2. Spring Security가 classpath에 있는 경우 ..

MyBatis - Join 매핑하기

Spring Boot + MyBatis 프로젝트 연습 목록 - 01. 신규 Spring Boot 프로젝트 만들기 - 02. Thymeleaf, spring-boot-devtools 추가 - 03. Spring Boot에 H2 추가 - 04. Spring Boot + H2 + Jdbc로 사용해보기 - 05. Spring Boot + H2 + MyBatis로 사용해보기 - 06. MyBatis Logging 추가 - 07. MyBatis - Join 매핑하기 (현재 포스트) 거의 대부분의 개발 시, 각 테이블들 간에는 여러 관계들로 엮여있습니다. 그에 따라 join으로 select를 할 때 어떻게 데이터를 매핑하여 가져오는지 해보기로 했습니다. 예전에 잠시 사용할 때에는 join 해서 가져올 데이터에 대해 ..

MyBatis Logging 추가

Spring Boot + MyBatis 프로젝트 연습 목록 - 01. 신규 Spring Boot 프로젝트 만들기 - 02. Thymeleaf, spring-boot-devtools 추가 - 03. Spring Boot에 H2 추가 - 04. Spring Boot + H2 + Jdbc로 사용해보기 - 05. Spring Boot + H2 + MyBatis로 사용해보기 - 06. MyBatis Logging 추가 (현재 포스트) MyBatis를 사용할 때, 어떤 쿼리가 실행되고 어떤 파라미터가 전달되었는지 또한 어떤 결과가 나왔는지를 확인할 수 있도록 logging을 설정하는 방법을 알아보도록 하겠습니다. 라이브러리 추가 없이 기본 기능으로 표시해주는 방법과 라이브러리를 추가하여 쿼리와 결과를 더 보기 좋게..

Spring Boot + H2 + MyBatis로 사용해보기

Spring Boot + MyBatis 프로젝트 연습 목록 - 01. 신규 Spring Boot 프로젝트 만들기 - 02. Thymeleaf, spring-boot-devtools 추가 - 03. Spring Boot에 H2 추가 - 04. Spring Boot + H2 + Jdbc로 사용해보기 - 05. Spring Boot + H2 + MyBatis로 사용해보기 (현재 포스트) 드디어 MyBatis를 추가하여 사용하는 부분입니다. 시작하기 전 도메인 객체 추가 및 리팩토링 1. 도메인 객체를 하나 이상 두고 MyBatis를 테스트해보고 싶었기에 Diary 도메인 객체를 추가하였다. Diary 관련 소스는 포스팅에는 남기지 않고 아래에 공유드린 github에서 확인이 가능하다. src/main/java..

Spring Boot + H2 + Jdbc로 사용해보기

Spring Boot + MyBatis 프로젝트 연습 목록 - 01. 신규 Spring Boot 프로젝트 만들기 - 02. Thymeleaf, spring-boot-devtools 추가 - 03. Spring Boot에 H2 추가 - 04. Spring Boot + H2 + Jdbc로 사용해보기 (현재 포스트) 현재 포스팅하는 시리즈는 Spring Boot와 MyBatis를 결합한 프로젝트를 연습하는 부분입니다. 하지만 이번 포스팅은 MyBatis를 설정하기 전에 먼저 Jdbc로 사용하는 방법을 확인하고 싶어 진행한 곁가지입니다. 01~03번 포스팅까지는 동일하게 진행되고 사용함에 있어 04.Jdbc / 05.MyBatis(이후 정리 예정) 이렇게 나뉘어집니다. JDBC 사용하기 1. pom.xml에 아..