java
-
BOM(Byte Order Mark) BOM 이란 문서의 맨 앞부분에 눈에 보이지 않는 특정 바이트(Byte)를 넣은 다음 해당 문서의 인코딩 방식이 어떠한 인코딩 방식으로 사용되었는지 알아내는 방법을 나타낸다. BOM은 텍스트 에디터 화면에서는 보이지 않고, 헥사 에디터(Hex Editor)로 열었을때만 보인다. BOM의 종류 인코딩 방식 BOM(Byte Order Mark) UTF-8 EF BB BF UTF-16 Big Endian FE FF UTF-16 Little Endian FF FE UTF-32 Big Endian 00 00 FE FF UTF-32 Little Endian FF FE 00 00 Java 로 예를 들면 간단한 csv 파일을 만들때 text가 깨지는 경우가 있다. 이때 사용한다. ..
바이트 순서 표시(BOM, Byte Order Mark)BOM(Byte Order Mark) BOM 이란 문서의 맨 앞부분에 눈에 보이지 않는 특정 바이트(Byte)를 넣은 다음 해당 문서의 인코딩 방식이 어떠한 인코딩 방식으로 사용되었는지 알아내는 방법을 나타낸다. BOM은 텍스트 에디터 화면에서는 보이지 않고, 헥사 에디터(Hex Editor)로 열었을때만 보인다. BOM의 종류 인코딩 방식 BOM(Byte Order Mark) UTF-8 EF BB BF UTF-16 Big Endian FE FF UTF-16 Little Endian FF FE UTF-32 Big Endian 00 00 FE FF UTF-32 Little Endian FF FE 00 00 Java 로 예를 들면 간단한 csv 파일을 만들때 text가 깨지는 경우가 있다. 이때 사용한다. ..
2021.12.02 -
RSA 암호화 공개키 암호시스템 중 한개, 암호화 뿐만 아니라 전자서명도 가능한 최초의 알고리즘으로 알려진다. RSA는 두개의 키를 사용한다. 공개키와 개인키를 사용하는데 공개키는 평문을 암호화 하는데 사용하고 개인키는 암호화한 데이터를 복호화할때 사용한다. 이를 비대칭키라고 하며 누구나 어떤 메시지를 암호화 할수 있지만 암호화한 데이터는 개인키를 가지고 있는 사람만 복호화 할 수 있다. 일반적으로 공개키는 n 과 e 값으로 구성되어 있습니다. n 값은 Modulus 이며 e 값은 Public exponent 값입니다. 개인키는 기본적으로 n, e, d, p, q, exponent1, exponent2, coefficient 값을 갖습니다. 여기서 가장 필요한 값은 d 입니다. 개인키의 각 값은 공개키의..
RSA 암호화 만들기RSA 암호화 공개키 암호시스템 중 한개, 암호화 뿐만 아니라 전자서명도 가능한 최초의 알고리즘으로 알려진다. RSA는 두개의 키를 사용한다. 공개키와 개인키를 사용하는데 공개키는 평문을 암호화 하는데 사용하고 개인키는 암호화한 데이터를 복호화할때 사용한다. 이를 비대칭키라고 하며 누구나 어떤 메시지를 암호화 할수 있지만 암호화한 데이터는 개인키를 가지고 있는 사람만 복호화 할 수 있다. 일반적으로 공개키는 n 과 e 값으로 구성되어 있습니다. n 값은 Modulus 이며 e 값은 Public exponent 값입니다. 개인키는 기본적으로 n, e, d, p, q, exponent1, exponent2, coefficient 값을 갖습니다. 여기서 가장 필요한 값은 d 입니다. 개인키의 각 값은 공개키의..
2021.10.20 -
Filter(Spring Security) 와 Interceptor의 차이 * Filter : Dispatcher Servlet 앞단에서 정보를 처리하고, Interceptor는 Dispatcher Servlet에서 Controller로 가기전 요청을 가로채서 정보를 처리한다. - 기능적인 측면으론 완전히 다른 개념이다. spring security (Dispatcher Servlet 구간으로 진입전 Filter 구간에서 처리) : 인증,권한,보안 기능을 제공하는 Spring의 하위 프레임워크 : 스프링 기반의 어플리케이션 보안을 담당하는 프레임워크이다. * 사용해야할 어노테이션 @Configuration : Spring IOC 컨테이너(Bean을 관리하는 컨테이너)에게 해당 클래스는 Bean..
Spring SecurityFilter(Spring Security) 와 Interceptor의 차이 * Filter : Dispatcher Servlet 앞단에서 정보를 처리하고, Interceptor는 Dispatcher Servlet에서 Controller로 가기전 요청을 가로채서 정보를 처리한다. - 기능적인 측면으론 완전히 다른 개념이다. spring security (Dispatcher Servlet 구간으로 진입전 Filter 구간에서 처리) : 인증,권한,보안 기능을 제공하는 Spring의 하위 프레임워크 : 스프링 기반의 어플리케이션 보안을 담당하는 프레임워크이다. * 사용해야할 어노테이션 @Configuration : Spring IOC 컨테이너(Bean을 관리하는 컨테이너)에게 해당 클래스는 Bean..
2021.08.28 -
JAVA 파일(.class)에는 필드(Field), 생성자(constructor), 메소드(method) 존재 class Example_Class { int filed ; //필드 Example_Class() { } //생성자 Example_Class(int a) {} //생성자 Example_Class(int a, String b) {} //생성자 public void example_method { //메소드 } } * 필드(Field) : 필드는 객체의 고유 데이터, 상태 정보 등을 저장하는 곳이며, 변수와 비슷하게 사용된다. ※ 변수는 생성자(Constructor)와 메소드(Method) 내에서만 사용되고 생성자와 메소드가 실행 종료되면 자동 소멸한다. 하지만 필드는 생성자와 메소드 전체..
필드(Field), 생성자(Contructor), 메소드(Method)JAVA 파일(.class)에는 필드(Field), 생성자(constructor), 메소드(method) 존재 class Example_Class { int filed ; //필드 Example_Class() { } //생성자 Example_Class(int a) {} //생성자 Example_Class(int a, String b) {} //생성자 public void example_method { //메소드 } } * 필드(Field) : 필드는 객체의 고유 데이터, 상태 정보 등을 저장하는 곳이며, 변수와 비슷하게 사용된다. ※ 변수는 생성자(Constructor)와 메소드(Method) 내에서만 사용되고 생성자와 메소드가 실행 종료되면 자동 소멸한다. 하지만 필드는 생성자와 메소드 전체..
2021.08.28 -
Controller @PostMapping(value="/list/file/download") public ResponseEntity licenseListFileDownloadController(@RequestBody List htlvo) { Resource resource = es.equipmentListFileDownload(htlvo); //서비스에서 Resource 만들어 리턴 HttpHeaders header = new HttpHeaders(); String mimeType = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"; header.setCacheControl("no-cache"); header.setContentT..
특정 List 정보 .xlsx 파일 다운로드Controller @PostMapping(value="/list/file/download") public ResponseEntity licenseListFileDownloadController(@RequestBody List htlvo) { Resource resource = es.equipmentListFileDownload(htlvo); //서비스에서 Resource 만들어 리턴 HttpHeaders header = new HttpHeaders(); String mimeType = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"; header.setCacheControl("no-cache"); header.setContentT..
2021.08.28 -
JVM 이란?JVM은 Java Virtual Machine으로 Java와 OS 사이에서 가장 중요한 중간자 역할을 한다. 자바 컴파일러(javac)가 개발자가 작성한 소스코드(.java)를 컴파일하면 바이트 코드(.class)가 된다.컴파일된 바이트 코드(.class) 를 OS에 맞게 기계어로 해석해주는 역할을 JVM 이 한다.쉽게 얘기하면 자바 소스코드(.java)를 컴파일 한 바이트 코드(.class)를 운영체제가 이해할 수 있도록해석하고 실행시키는게 JVM 이다. JVM 실행 순서자바 소스코드(.java)를 자바 컴파일러가 바이트코드(.class) 로 변환한다.변환된 바이트코드를 JVM 의 Class Loader(클래스로더) 로 전달한다.Class Loader(클래스 로더)에서 JVM 런타임 영역..
JVM, 자바 메모리 영역(코드, 데이터, Static, 스택, 힙)JVM 이란?JVM은 Java Virtual Machine으로 Java와 OS 사이에서 가장 중요한 중간자 역할을 한다. 자바 컴파일러(javac)가 개발자가 작성한 소스코드(.java)를 컴파일하면 바이트 코드(.class)가 된다.컴파일된 바이트 코드(.class) 를 OS에 맞게 기계어로 해석해주는 역할을 JVM 이 한다.쉽게 얘기하면 자바 소스코드(.java)를 컴파일 한 바이트 코드(.class)를 운영체제가 이해할 수 있도록해석하고 실행시키는게 JVM 이다. JVM 실행 순서자바 소스코드(.java)를 자바 컴파일러가 바이트코드(.class) 로 변환한다.변환된 바이트코드를 JVM 의 Class Loader(클래스로더) 로 전달한다.Class Loader(클래스 로더)에서 JVM 런타임 영역..
2021.08.28