Java 5

[java] FilenameFilter, FileFilter

File class는 파일 내부의 리스트를 찾는 메소드를 세 개 갖고 있다. public String[] list( FilenameFilter filter ); 디렉토리의 파일목록을 String 배열로 반환 public File[] listFiles( FileFilter filter ); FileFilter 인스턴스에 구현된 조건에 맞는 File을 배열로 반환 public File[] listFiles( FilenameFilter filter ); FilenameFilter 인터페이스가 구현된 조건에 맞는 File을 배열로 반환 interface FileFilter와 FilenameFilter는 특정 파일이나 디렉토리를 필터링 하여 리스트를 추출할 필요가 있을 때 사용한다. 두개의 차이점은 정의된 메소드..

Dev/Java 2020.06.10

[java] JVM, JRE, JDK, 자바 메모리 구조

[ JVM, JRE, JDK] JVM : 자바 가상머신(Java Virtual Machine) 바이너리 코드를 읽고, 검증, 실행한다. 자바 소스코드로부터 만들어지는 자바 바이너리 파일(.class)을 실행가능 JRE : 자바 실행환경(Java Runtime Environment) 자바 프로그램을 동작할 때 필요한 라이브러리 파일과 기타 파일 포함. JDK : 자바 개발도구(Java Development Kit) JRE + 개발을 위해 필요한 툴 javac, java 포함 [자바 메모리 구조] 이미지 추가 예정 eden - s0 - s1 - tenured - direct memory 에덴에서 생성(Object 생성 시) 에덴영역이 가득차면 minor gc 발생 계속 사용되는 object(=reachabl..

Dev/Java 2019.09.28

[java] HttpClient

HttpClient클래스 이 클래스의 가장 주요 기능은 HTTP 메소드를 실행하는 것이다. HTTP 메소드 실행에는 일반적으로 HttpClient 에 의해 내부적으로 처리되는 하나 또는 여러 개의 http request/response 교환이 포함된다. setConnectionTimeout : 연결이 설정 될 때까지 시간 초과를 설정한다. 클라이언트가 서버에 연결을 시도할 때, 연결이 설정되거나 서버가 연결 요청에 응답하기까지 경과 된 시간을 의미한다. setSoTimeout : 연속 된 두 패킷 사이의 비활성 시간 또는 시간 차이를 설정한다. 연결을 설정 한 후 클라이언트 소켓은 요청을 보낸 후 응답을 기다린다. 서버가 응답하기 전에 클라이언트가 서버에 요청을 보낸 이후의 경과 시간을 의미한다. 연결 ..

Dev/Java 2019.09.26

[java] on-heap 과 off-heap

on-heap store : Java heap에 존재할 객체를 참조한다 (또한 GC를 따릅니다). off-heap store : EHCache에 의해 관리되지만 힙 외부에 저장되는 (직렬화 된) 개체를 참조한다 (또한 GC에 종속되지 않는다). 메모리에서 계속 관리되므로 힙 메모리보다 약간 느리지만 디스크 저장소보다 빠르다. EHCache의 off-heap store 는 일반 오브젝트를 힙에서 가져 와서 직렬화하여 EHCache가 관리하는 메모리 덩어리에 바이트로 저장한다. 디스크에 저장하는 것과 같지만 여전히 RAM에 있다. 이 상태에서는 객체를 직접 사용할 수 없으므로 먼저 역 직렬화해야한다. Cache 일반적으로 애플리케이션에서 데이터베이스를 접근하게 되면 많은 시간과 비용을 소비하게 된다. 그래서..

Dev/Java 2019.09.20

[java] 메타데이터, createStatement 메소드, 자바에서의 Tcl

메타데이터: 해당 데이터에 대한 정보를 갖고있는 데이터 DB내의 데이터에 대한 소유자, 데이터 크기 정보 메타데이터를 조회하는 예제import java.sql.Connection;import java.sql.ResultSet;import java.sql.ResultSetMetaData;import java.sql.Statement;import com.db.DBConn;public class MetaTest {public static void main(String[] args) {Connection conn =DBConn.getConnection();Statement stmt = null;ResultSet rs = null;ResultSetMetaData rsmd = null;String sql;try {..

Dev/Java 2019.01.31
반응형