본문 바로가기

전체 글

(175)
[JAVA] SHA-256 암호화 하기 1. SHA-256란? SHA-256은 SHA(Secure Hash Algorithm) 알고리즘의 한 종류로서 256비트로 구성되며 64자리 문자열을 반환합니다. 해시 알고리즘 SHA-2 계열 중 하나이며, 2^256만큼 경우의 수를 만들 수 있습니다. SHA-256 해시 함수는 어떤 길이의 값을 입력하더라도 256비트의 고정된 결과값을 반환합니다. 입력 값이 조금만 변동되더라도 반환값이 완전히 달라지기 때문에 반환값을 토대로 입력값을 유추하는 것이 거의 불가능하다고 합니다. SHA-256은 단방향 암호화 방식이기 때문에 복호화가 불가능합니다. 복호화를 하지 않아도 되기 때문에 속도가 빠르며, 사용 예로 비밀번호의 일치여부 확인이 있습니다. 여기서 단방향 암호화란 평문을 암호화 했을 때, 원래 평문으로 ..
[JAVA] POI Excel 다운로드 기능 만들기 apache poi 라이브러리를 이용해서 자바, 또는 웹상에서 Excel 파일 다운로드 기능을 만들어 보겠습니다. 1. poi란? 아파치 POI(Apache POI)는 아파치 소프트웨어 재단에서 만든 라이브러리로서 마이크로소프트 오피스 파일 포맷을 순수 자바 언어로서 읽고 쓰는 기능을 제공한다. 출처 : https://ko.wikipedia.org/wiki/%EC%95%84%ED%8C%8C%EC%B9%98_POI 2. poi 사용 예제 1) poi library 추가 (maven) org.apache.poi poi 5.0.0 org.apache.poi poi-ooxml 5.0.0 용도에 맞게 pom.xml에 해당 라이브러리를 추가해주세요. 2) ExcelUtil (File, HttpServletRespo..
[SpringBoot] tomcat 종료 시 logback thread가 종료되지 않을 경우 05-Apr-2021 15:38:25.517 INFO [java-sdk-http-connection-reaper] org.apache.catalina.loader.WebappClassLoaderBase.checkStateForResourceLoading Illegal access: this web application instance has been stopped already. Could not load [ch.qos.logback.classic.spi.ThrowableProxy]. The following stack trace is thrown for debugging purposes as well as to attempt to terminate the thread which caused the il..
[SpringBoot] destroy event 등록하기 spring boot를 사용하다보면 명시적으로 자원을 close 해주어야 하는 경우가 있습니다. 이때 spring boot destory event 발생 시 자원을 close해주는 코드를 추가해주면 됩니다. public class ShutdownHookConfiguration { public void destroy() { /* close 로직*/ } } import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.context.annotation.Bean; @SpringBootApplication publ..
[Maven] 빌드 시 테스트 Skip하기 pom.xml에 아래와 같은 코드를 입력하면 됩니다. ... org.apache.maven.plugins maven-surefire-plugin true ...
[Mysql] 데이터 정의어 (DDL) 1. 데이터 정의어(DDL) 이란 테이블을 생성, 삭제하거나 컬럼을 추가, 수정, 삭제할 때 사용하는 명령어입니다. 크게 CREATE, ALTER, DROP, TRUNCATE로 구분됩니다. 2. 데이터 정의어 명령어 정리 1) CREATE 데이터베이스 또는 테이블을 생성할 때 사용합니다. create database 데이터베이스명; show databases; use 데이터베이스명; create table 테이블명 ( 컬럼명 자료형 [제약조건 및 옵션], [키 제약조건 선언] ) CREATE TABLE department ( id INT(11) NOT NULL AUTO_INCREMENT, name VARCHAR(50) NULL DEFAULT NULL, PRIMARY KEY (id) ) create tab..
[Mysql] 조인 (JOIN) 이란? 1. JOIN 이란? 한개 또는 여러개의 테이블을 결합하는 연산을 의미합니다. JOIN의 종류는 다음과 같습니다. cross join inner join left outer join right outer join full outer join self join join을 설명하기 이전에 테스트로 사용될 테이블 부터 생성해 보겠습니다. CREATE TABLE `department` ( `id` INT(11) NOT NULL AUTO_INCREMENT, `name` VARCHAR(50) NULL DEFAULT NULL, PRIMARY KEY (`id`) ) CREATE TABLE `employee` ( `id` INT(11) NOT NULL AUTO_INCREMENT, `name` VARCHAR(100) NU..
[Github] GitHub Gist 사용하기 1. github gist란? github gist는 짧은 코드, 메모 등을 기록 또는 공유 목적으로 사용할 수 있는 무료 서비스입니다. (gist는 요점, 요지라는 뜻을 가지고 있습니다.) 2. github gist 사용법 1) github 로그인 github gist로 이동 후 로그인을 합니다. github 계정과 연동됩니다. https://gist.github.com/ 2) git gist 작성화면으로 이동 오른쪽 상단에 "+" 버튼을 눌러 gist Edit창으로 이동합니다. 3) git gist 작성 Filename including extension 입력란에 파일명과 확장자를 포함해서 입력해줍니다. 그리고 소스코드를 입력 한 다음 create 버튼을 누르면 작성이 완료됩니다. github gis..

반응형