최근 게시물
-
[MSSQL] 파티션 테이블Database 2023.09.22 15:19
기존에 가지고 있던 특정 테이블을 파티션테이블로 교체하는 작업 쿼리 기록. 파일그룹을 분리할지 기본 파일그룹에 추가하여 사용할지를 먼저 정해야한다. DB서버에 드라이브가 따로 분리되어있는 경우는 파일그룹을 분리하여 운영하면 디스크 부하를 줄일 수 있으나, 만약 DB 서버 드라이브가 1개라면 크게 의미가 없다. 소요시각을 확인하기 위해서, 로그 기록용 아래 변수를 선언해두고 사용하기로 한다. DECLARE @V_LOG_DESC VARCHAR(1000) 앞서 말했던 파일그룹 분리 케이스의 경우 1~2를 수행해야하는데, 기본 그룹 PRIMARY 를 사용할 경우 생략한다. 파일그룹 생성 ALTER DATABASE haileydb ADD FILEGROUP FG_MSG_LOG ; --ALTER DATABASE ha..
-
[MSSQL] 프로시저 기본 포맷Database 2023.07.07 14:25
프로시저 생성 기본 포맷 샘플 기본 IN/OUT 파라미터 주석 포맷 변수 선언 로그 기록 TRY CATCH 등등 CREATE PROCEDURE BATCH.SP_COMMON @P_SEQ_ID VARCHAR(32) ,@P_WK_DT VARCHAR(8) ,@O_RST VARCHAR(2) OUTPUT ,@O_RST_MSG NVARCHAR(4000) OUTPUT AS /***************************************************************************** 설명 @AUTHOR : @DATE : @PARAM : DECLARE @P_SEQ_ID VARCHAR(32) = 'P' ,@P_WK_DT VARCHAR(8) = COM.TO_CHAR(GETDATE()-2, 'YY..
-
온라인으로 내용증명 발송부터 의사표시의 공시송달 신청까지상식 2023.04.06 23:10
집주인이 잠수를 탄 관계로.. 전세계약 해지 통보를 위한 의사표시의 공시송달 신청기. 집은 경매개시된다는 안내문이 날라오고 임대인은 당연히 연락 두절이고. 내용증명을 발송하였으나 역시나 반송되었다. 집주인이 받지 않는 경우 집배원이 3회 방문을 한 뒤에나 반송이 되기 때문에 처리 시간이 오래 걸린다. 전세만료 6개월 전부터 바로 진행하는게 맘편할듯.. 하지만 게으른 나는 5개월 전에 겨우겨우 시작. 다행히 보증보험은 가입했으니 ㅠㅠ 이행청구를 위해 진행해야할 것 전세계약 해지 내용증명 발송 원래는 집주인에게 통보하고 확답문자를 받으면 되지만 ? 잠수탔으므로 ? 돈이 많이들 예정.. 분명 반송이 됨. 그러면 집주인 초본을 떼야함 반송된 우편물과 봉투, 임대차계약서 원본 지참 후 500원만 내면 뗄 수 있다..
-
부동산 권리 용어 정리상식 2023.01.03 11:01
한국어인지 모르겠는.. 등기부 등본 확인에 필요한 권리 용어 정리 (장문 주의) 인터넷에서 찾은 자료와 전세사기로 임차권을 신청했던 경험을 섞어 정리를 해놓았는데 전문가가 아니므로 틀린부분이 있을 수 있음. 참고 : https://easylaw.go.kr/CSP/CnpClsMain.laf?popMenu=ov&csmSeq=306&ccfNo=2&cciNo=1&cnpClsNo=2 부동산 경매 > 입찰의 준비 > 입찰 전 준비사항 및 말소ㆍ인수되는 권리의 확인 > 매수로 인해 말 매수로 인해 말소ㆍ인수되는 권리의 확인, 말소ㆍ인수되는 권리의 확인 필요성 및 확인 방법, 권리확인의 필요성, 권리확인의 방법, 최선순위 권리, 선순위 권리, 후순위 권리, (근)저당권, (가) easylaw.go.kr 위 사이트는 용..
-
Javascript 클립보드 복사Javascript 2022.12.16 10:48
javascript 에 내장되어있는 기본 함수를 사용해서 화면의 값을 클립보드로 복사할 수 있다. 클립보드 복사는 writeText 함수를 사용하는것이 권장되나, 해당 함수는 https, localhost 에서만 동작한다. 개발서버 등 http 포트를 사용하는 경우 구버전인 execCommand 를 사용해줘야 한다. 테스트 할때 textarea element 를 하나 숨겨두고 값을 사용하려고 하였으나 제대로 동작하지 않았다. 원인을모르겠음 하여 구글링한 소스로 사용함. $(".btn-copy").bind('click', function() { var targetItem = $(this).siblings('.item-copy') , targetVal = targetItem.val(); // 숫자만복사할 아..
-
[Oracle] SYS_CONTEXT 함수로 현재 세션 환경 조회Database 2022.12.15 17:02
기본 문법 SYS_CONTEXT ('USERENV', 'parameter') USERENV 가 현재 세션의 값을 조회하기 위한 파라미터이다. 참고 : https://docs.oracle.com/cd/E11882_01/olap.112/e23381/row_functions079.htm#OLAXS472 SYS_CONTEXT SYS_CONTEXT SYS_CONTEXT returns the value of an attribute of a named context. The context, attribute, and value must already be defined in the database. If the context is not defined, SYS_CONTEXT returns NULL. Return Va..
-
Mybatis < foreach > 요소로 동적 쿼리 작성JAVA 2022.12.14 15:33
1. 호출에 사용할 Request Dto 작성 HaileyReqDto.java package com.hailey.dto.request; import java.util.List; public class HaileyReqDto { private String rid; private List ridList; // foreach 에 사용할 변수 private String loginId; public String getRid() { return rid; } public void setRid(String rid) { this.rid = rid; } public List getRidList() { return ridList; } public void setRidList(List ridList) { this.ridLis..
-
[Oracle] 프로시저 실행 후 리턴 값 출력Database 2022.05.26 15:06
프로시저 실행 결과를 OUT_MSG 변수에 리턴받아 출력하는 기본 구문 DECLARE OUT_MSG VARCHAR2(200); OUT_CURSOR SYS_REFCURSOR; BEGIN CALL_PROCEDURE_NAME('PARAM1', 'PARAM2', OUT_MSG); DBMS_OUTPUT.PUT_LINE('============================='); DBMS_OUTPUT.PUT_LINE('OUT_MSG : ' || OUT_MSG); -- RESULT 타입이 커서인 경우 DBMS_SQL.return_result(OUT_CURSOR); COMMIT; EXCEPTION WHEN OTHERS THEN ROLLBACK; DBMS_OUTPUT.PUT_LINE('===================..
-
Spring Controller에서 이미지 타입으로 리턴JAVA 2022.01.24 15:47
SSL 인증서가 적용된 사이트에서 http 프로토콜 도메인의 이미지는 url 로 삽입이 불가하다. 이를 서버 컨트롤러 단에서 마치 내 사이트 안에 있는 이미지 처럼 표기하는 방법. 클라이언트 단에서는 아래와같이 간단히 표기 이미지를 조회하기 위한 각 변수를 path로 받아서 처리 import java.io.BufferedOutputStream; import java.io.FileInputStream; import java.io.IOException; import java.io.InputStream; import java.net.HttpURLConnection; import java.net.URL import java.util.ArrayList; import java.util.HashMap; import ..
-
RSA 암호화 적용하기인증 심사 2021.06.21 13:13
비밀번호는 보통 단방향 암호화 MD5, SHA 등의 방식을 사용하며 일치 여부만 판단하면 되기 때문에 문제가 없다. 그러나 기타 개인정보를 서버단에서 사용해야 하는 경우 ? 복호화가 가능한 AES 혹은 RSA 암호화 방식을 사용해야 한다. https 방식으로 SSL을 적용한다 할지라도 평문으로 전송하는 것은 보안에 취약한 것으로 간주한다. 복호화 가능한 암호화 방식 중에는 대칭키에 비해 공개키/개인키 방식이 훨씬 보안에 유리하다. 대칭키의 경우 고유한 하나의 key 로 운영을 하기 때문에 key 를 주기적으로 변경해주지 않으면 key 가 노출되는 상황이 언제든 발생할 수 있다. RSA 암호화 알고리즘의 경우, 공개키/개인키를 그때그때 생성하여 일회성으로 사용하고 key 를 폐기한다. 오늘 예제는 로그인시..
-
Javascript 모듈화 해서 사용하기Javascript 2021.01.08 12:01
common.js 등의 파일로 공통함수를 작성 할 때, 가독성을 높이기 위해 객체를 모듈화 하여 사용하는 기본 템플릿. Class 처럼 생성자로 초기화 하여 사용하기 commonUtil.js // 생성자 const CommonUtil = function(obj) { for(let key in obj) { this[key] = obj[key]; } this.init(obj); }; // 공통변수 CommonUtil.prototype = { commonData : {}, userInfo: null, PAGING_SIZE: 10 }; CommonUtil.prototype.init = function(obj) { // TODO //this.submit(); }; CommonUtil.prototype.submit..
-
이클립스 속도 개선 eclipse.ini / PreferenceJAVA 2021.01.08 09:54
eclipse.ini 설정 변경 OOM 혹은 메모리 or CPU를 너무 많이 잡아먹어서, ini 파일 계속 수정하다가 찾은 최종 버전. (메모리 8GB) -startup plugins/org.eclipse.equinox.launcher_1.5.500.v20190715-1310.jar --launcher.library plugins/org.eclipse.equinox.launcher.win32.win32.x86_64_1.1.1100.v20190907-0426 -product org.eclipse.epp.package.jee.product -showsplash org.eclipse.epp.package.common --launcher.defaultAction openFile --launcher.XXMaxPe..
-
sessionStorage & localStorage 사용Javascript 2020.12.29 15:35
쿠키와 두 가지 스토리지 비교 Cookie Session Stograge Local Storage 만료 기간 별도 지정 현재 탭 유지 시 무제한 용량 4KB 무제한 HTTP 요청 포함 미포함 참고 : https://developer.mozilla.org/ko/docs/Web/API/Window/sessionStorage Window.sessionStorage - Web API | MDN sessionStorage 읽기 전용 속성은 현재 출처 세션의 Storage 객체에 접근합니다. sessionStorage는 localStorage와 비슷하지만, localStorage의 데이터는 만료되지 않고, sessionStorage의 데이터는 페이지 세션이 끝날 developer.mozilla.org [ 사용 예 ..
-
lucy-xss-servlet-filter 로 크로스사이트 스크립팅 공격 예방하기인증 심사 2020.08.05 15:47
네이버에서 이전에 개발되었던 lucy-xss-filter 라는 라이브러리로 기본적인 크로스사이트 스크립팅 방지 문자들을 치환하기는 유용했으나 일일히 치환로직을 추가해야했기 때문에 조치가 누락되는 경우가 자주 발생하며, 또한 공통함수에 적용했을 때 필터링하지 말아야 할 파라미터에 적용되는 등의 단점이 있었다. 이에 대한 해결책으로 등장한 자바 서블릿 필터 기반의 라이브러리가 바로 lucy-xss-servlet-filter 이다. 참고 ) https://github.com/naver/lucy-xss-servlet-filter naver/lucy-xss-servlet-filter Contribute to naver/lucy-xss-servlet-filter development by creating an ac..
-
JQuery cookie 라이브러리 활용하기Javascript 2020.08.05 14:15
애플리케이션에서 자주 사용하는 브라우저 쿠키의 옵션들을 다양하게 활용하게 해주는 jquery 의 cookie 라이브러리. document.cookie 로 저장된 쿠키들을 불러올 수 있지만, url 파라미터처럼 name1=value&name2=value2 와 같이 한덩어리의 문자열로 값을 리턴해주기 때문에 일일히 파싱해서 값을 읽어들이기는 쉽지않다. 공통함수에 직접 선언하는것도 어렵진 않지만 옵션 지정까지 고려하면 무료의 훌륭한 라이브러리를 사용하지 않을 이유가 없다! 사실 쿠키 라이브러리는 설명이 따로 필요 없을 만큼 사용법이 간단하지만, 기본 CRUD 정도만 정리해보고자 한다. 참고 ) https://github.com/carhartl/jquery-cookie carhartl/jquery-cookie ..
-
[Oracle] 프로시저로 정기 메일 발송하기Database 2020.06.02 15:09
ORACLE 에서 프로시저를 통해 HTML 형식을 만든 후 SMTP 프로토콜로 메일을 발송하는 쿼리를 작성해본다. 샘플은 배치를 통해 월별 판매 현황을 보고하는 예제이다. 먼저 보내야 할 메일을 저장할 테이블을 하나 만든다. CREATE TABLE TB_MAIL_HISTORY ( EMAIL_ADDR VARCHAR2(50 CHAR) NOT NULL, TITLE VARCHAR2(100 CHAR) NULL, MESSAGE CLOB NULL, SEND_CHK CHAR(1 CHAR) NULL, CREATED DATE NOT NULL SEND_DT DATE NULL ) ; COMMENT ON TABLE TB_MAIL_HISTORY IS '이메일 발송 내역'; COMMENT ON COLUMN TB_MAIL_HISTO..
-
유니코드 Encoding/DecodingETC. 2020.05.27 15:23
한글 문자를 유니코드 형태, 혹은 그 반대로 변환하는 예제를 만들어 보자. 출처 : https://jang8584.tistory.com/227 [javascript] 유니코드-한글 변환 test 변환(유니코드 -> 한글) 변환(한글 -> 유니코드) 소스 -------------------------------------------------------------------------------------------------------------------------
-
Spring 다국어 적용하기JAVA 2020.05.27 15:04
특정 사이트에서 다국어 서비스를 구현하기 위해 Message Source 를 활용하여 다국어를 적용하는 소스를 작성해보려고 한다. 화면단에서는 /common/messages.js 를 호출하여 마치 js 파일을 사용하는 듯 한 모습을 하지만 이는 Request Mapping을 통하여 서버에서 properties 파일을 읽어들이는 식으로 구성하고자 한다. - Controller com/hailey/message/MessageController.java package com.hailey.message.controller; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import org.sp..
-
[IBM] 새 Compute Node 작성하기 by ESQLETC. 2020.05.22 13:54
IIB의 메시지 플로우에서 Compute Node 를 추가한 뒤 더블클릭하면 .esql 파일이 열린다. 아래와 같이 기본적인 소스가 작성되어있어 여기에 추가 작성하여 개발한다. BROKER SCHEMA MB_TEST -- 프로젝트명 CREATE COMPUTE MODULE MB_TEST_SUBFLOW_Compute -- Compute 노드명 CREATE FUNCTION Main() RETURNS BOOLEAN BEGIN -- CALL CopyMessageHeaders(); -- CALL CopyEntireMessage(); -- 데이터 처리 로직 추가 RETURN TRUE; END; CREATE PROCEDURE CopyMessageHeaders() BEGIN DECLARE I INTEGER 1; DECL..