JVM/Java

· JVM/Java
개요 데이터를 전달용 오브젝트 Why to use 서버 - 클라이언트간 객체를 전달할 때 메소드 콜(주로 데이터 가공)을 줄이기 위해 View 는 보통 변경이 잦은데, 이때 Entity 를 받아선 DB Schema 영향에 직격타다. 따라서 DTO를 별도로 정의해서 전달하는게 국룰이다. When to use 서로 다른 많은 오브젝트가 존재하고, 프레젠테이션 모델이 한번에 그 데이터를 전달하려 할 때 DTO를 통해 도메인으로부터 클라이언트가 필요한 데이터만 전달할 수 있게함. Where to place? 주로 서비스 레이어 -> 컨트롤러 객체로 DTO를 전달한다. 역방향(컨트롤러 -> 서비스)의 경우에는 VO (불변객체) 를 사용한다. 개발자마다 다르지만DTO는 서비스 패키지, VO는 컨트롤러 패키지에 담는..
· JVM/Java
Compile 언어의 변수 선언 방식은 보통 Explicit Declaration이다. Java SE 10 이전 버전까지는 모두 Explicit Declaration을 따랐다. Explicit Declaration Type Example import java.io.BufferedWriter; import java.io.IOException; import java.io.OutputStreamWriter; public class Main { public static void main(String[] args) throws IOException { // Type variable_name = ~~~ String blogName = "Falcon"; int numberOfRegister = 50; Buffered..
· JVM/Java
Java Stream 이란 입/출력 데이터 흐름의 통로 입력 스트림은 소스 데이터로부터 데이터를 읽어들이고 출력 스트림은 목적 대상까지 데이터를 흘려보내 쓴다. Java Stream 특징 Queue , FIFO(First In First Out) 방식 Byte 단위로 흐른다. 입출력 대상에 따라 나뉜다. FileStream -> 파일 ByteArrayStream -> 메모리 (byte 배열) PipeStream -> 프로세스 Input/OutputStream InputStream 은 read() , OutputStream 은 write() 추상 메소드를 기본적으로 구현하게 되어있다. FileInput/Ouput Stream은 모두 In/Output Stream의 자식 abstract method read..
· JVM/Java
🎯 Goal 자바에서 기본적으로 제공하는 util 을 사용해서 비밀번호에 흔히 쓰이는 영문 + 숫자 + 특수문자 조합 정규식을 작성해본다. (커닝페이퍼로 가져다 쓰세요!) 1. 정규식을 통한 패턴 지정 String passwordPolicy = "((?=.*[a-z])(?=.*[0-9])(?=.*[^a-zA-Z0-9]).{8,})"; //소문자, 0~9 숫자, 특수문자 8자리 이상! 2. 패스워드 패턴화 import java.util.regex.Matcher; import java.util.regex.Pattern; Pattern pattern_pwd = Pattern.compile(passwordPolicy); Matcher matcher_pwd = pattern_pwd.matcher(userPassw..
· JVM/Java
정규 표현식(Regular Expression)은 특정한 규칙을 가진 문자열의 집합을 표현하는 데 사용하는 형식 언어이다. 줄여서 regix라고 칭한다. 각종 프로그래밍 언어에서 지원하고 있고, 자바에서는 regix 패키지를 통해 지원한다. 로그인 할 때 빈번하게 사용되는 정규표현식 정리 메타문자 설명 . 임의 1개 문자와 일치해야 함 * 메타 문자 앞의 문자가 0개 이상 일치해야 함 [...] 일치 문자 목록 [^...] 비일치 문자 목록 (...) 괄호 안의 문자열 하나로 처리 a-z 영 소문자 A-Z 영 대문자 0-9 숫자 가-힣 한글 {8, 15} 자수 제한 (8 ~ 15자. {8, } 은 최소 자수만 8자로 제한 자바 정규식을 사용하려면 regex package를 포함시켜줘야한다. 다음 포스팅에..
· JVM/Java
자바를 처음 공부하면서 Eclipse를 키고 System.out.println()을 일일히 입력하는것은 은근 귀찮은 일이다. 이걸 해결해줄 자동완성 기능은 사실 '이미' 등록되있다. sysout + Ctrl + Space Bar => System.out.println(); 개꿀 ^ㅗ^ +++ 인간의 욕심은 끝이 없으니, 다른 키도 등록시키고 싶다면? Window -> Preferences -> Java-> Editor-> Templates -> New Name: 요약할 이름 Pattern: 자동 완성 내용 여기서 $cursor는 이름 그대로 자동완성 후 커서의 위치를 나타낸다. 괄호 안에 바로 내용을 입력할 수 있게 괄호 안에 $cursor를 위치시키도록 하자.
M_Falcon
'JVM/Java' 카테고리의 글 목록 (2 Page)