분류 전체보기

· BE/Java
스트림 스트림은 어떤 소스로부터 어떤 스트림을 얻고, 하나 이상의 중간 작업을 수행한 후, 마지막으로 하나의 최종 작업을 수행한다. 중간 작업 : filter, map, flatMap, peel, distinct, sorted, limit, substream 최종 종료 작업 : forEach, toArray, reduce, collect, min, max, count, anyMatch, allMatch, noneMatch, findFirst, findArray 를 포함한다. Java8 부터 추가된 컬렉션의 저장 요소를 하나씩 참조해서 람다식으로 처리할 수 있도록 처리해주는 반복자이다. Reduction 대량의 데이터를 가공해 축소하는 것 데이터의 합계, 평균값, 카운팅, 최댓값, 최소값 필터링, 매핑, ..
· BE/Java
Java 8의 특징 Interface에 default 메서드, static 메서드 사용 가능 자바 8 이전까지 Interface의 abstract 메서드는 반드시 클래스에서 구현했어야 함. 인터페이스에 absrtact 메서드를 추가했다면, 그 인터페이스를 사용한 모든 클래스에서 그 메서드를 구현했어야 함 (바이너리 호환성 이슈) 자바 8이후로 default, static 메서드 사용이 가능 람다식 사용 가능, 람다를 이용해서 스트림API 사용 가능(람다는 Java8 기능 중 큰 변화) Time, Date 관련한 API 추가 함수형 프로그래밍(Functional Programming) 계산을 수학적 함수의 평가로 취급하고, 변경 불가능한 값을 이용 함수형 프로그래밍은 순수 함수들로만 작성된다. 순수함수 :..
· Algorithm
- 알고리즘 분류 : BFS - 사용 언어 : JAVA - 문제 요점 하루가 지날 때 마다 익은 토마토로부터 상하좌우위아래 인접한 토마토가 익게 된다. 모든 토마토가 익으려면 최소 몇 일인 지 구하는 문제 저장될 때부터 모든 토마토가 익어있으면 0 출력 모든 토마토가 익을 수 없으면 -1 출력 필자는 3차원 배열과 토마토의 갯수를 비교하여 풀이 소스 설명은 주석을 참고해주세요. import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.ArrayList; import java.util.LinkedList; import java.util.Queue; import java..
· DB/Oracle
Oracle Server에서 쿼리 실행 시, 결과가 많은 경우 데이터가 짤리는 경우가 있다. 이 경우, 쿼리 결과를 텍스트 파일로 저장하면 해결할 수 있다. SPOOL을 이용하여 텍스트 파일로 추출할 수 있으며, SPOOL의 기본적인 구조는 아래와 같다. ------------------------------------------------------------ SET PAGESIZE 50000; -- 페이지 출력 크기 설정 (기본 : 14, 최대 : 50000) SET ECHO OFF; -- 명령어 에코 끔 SET COLSEP '|'; -- 조회 결과 컬럼 간 구분자 '|' 설정 -- 위의 SET 하는 이유는 보기 좋도록 설정하는 것이다. 해도 그만 안해도 그만이다. -------------------..
· etc
postman에서 환경 변수를 세팅하는 방법은 아래와 같다. 1. postman에서 우측 상단에 표시된 아이콘을 눌러서 환경변수 관련 세팅 뷰를 열고 Environment에서 Add를 누른다. 2. 환경 이름, 변수들을 입력한 후 Save 클릭 3. 환경 변수 적용 전 (http://localhost:3000으로 요청) 3. 환경 변수 적용 후 우측 상단에서 생성한 Enviornment(환경변수)를 선택해 준 후 변수는 {{변수이름}} 으로 사용할 수 있다.
· Algorithm
- 알고리즘 분류 : DFS/구현 - 사용 언어 : JAVA 소스 설명은 주석을 참고해주세요. import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.StringTokenizer; public class Main { public static int[][] map = new int[9][9]; public static void main(String[] args) throws IOException{ BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); for(int i=0; i
· Algorithm
- 알고리즘 분류 : 다익스트라 알고리즘 - 사용 언어 : JAVA 소스 설명은 주석을 참고해주세요. import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.util.*; public class Main { static class Pos implements Comparable{ int idx; int length; public Pos(int idx, int length) { this.idx = idx; this.length = length; } @Override public int compareTo(Pos o) { return this.length - o.length; } ..
· BE/Java
Reflection(리플렉션) 클래스의 실체가 아닌 반사된 모습을 이용한 기능. Class 를 이용 리플렉션 기능을 지원하지 않는 언어 : C, C++. Pascal 사용되는 기술 : JPA, Jackson, Mockito, Junit ... 장점 외부, 사용자 정의 클래스들을 사용할 수 있게 함 접근제어자에 관계없이 접근이 가능하도록 함 단점 컴파일 시점이 아닌, 런타임 시점에 클래스를 분석 JVM을 최적화할 수 없어 성능저하 마찬가지로, 컴파일 에러 확인 불가 코드 가독성 저하 내부가 노출되어 추상화 파괴 Class 실행중인 자바 어플리케이션의 클래스와 인터페이스의 정보를 가진 클래스 클래스와 인터페이스의 정보를 가지고 있기 때문에, Class는 클래스의 내용을 모두 확인 가능 (ex, 어노테이션, ..
멍목
'분류 전체보기' 카테고리의 글 목록