본문 바로가기

JAVA

(15)
[DB] JDBC, Connection Pool, Datasource 이해 과거에는 애플리케이션이 데이터베이스에서 데이터를 가져오는 과정이 커넥션을 생성하고 SQL을 전달, 그리고 결과를 응답받는 3단계에 걸쳐 이루어졌다. 그러나 이런 방식에는 데이터베이스를 다른 종류로 변경할 경우 애플리케이션 서버의 데이터베이스 관련 소스코드도 변경해야 한다. 개발자가 각각의 데이터베이스 종류마다 커넥션 연결, SQL 전달, 결과를 응답받는 방법을 새롭게 학습해야 한다. 와 같은 불편함이 있었고, 이에 따라 JDBC 라는 자바 표준이 등장하게 되었다. JDBC (Java Database Connectivity) 자바에서 데이터베이스에 접속할 수 있도록 하는 자바 API 데이터베이스에서 자료를 쿼리하거나 업데이트하는 방법을 제공 JDBC 표준 인터페이스 java.sql.Connection : ..
Java 입출력 I/O Stream - 바이트 기반 스트림, 문자 기반 스트림, 보조 스트림 I/O Stream 데이터를 운반하는데 사용되는 연결통로 단방향 통신만 가능하므로 입력 스트림(input stream)과 출력 스트림(output stream) 2개의 스트림이 필요 FIFO(First In First Out) 구조 바이트 기반 스트림 스트림은 바이트 단위로 데이터를 전송 java.io 패키지에서 입출력을 처리할 수 있는 표준화된 방법 제공 InputStream, OutputStream이 최상위 추상 클래스 입력스트림 출력스트림 입출력 대상 FileInputStream FileOutputStream 파일 ByteArrayInputStream ByteArrayOutputStream 메모리(byte 배열) PipedInputStream PipedOutputStream 프로세스 AudioInp..
JAVA Collections Framework 컬렉션 프레임워크 Collections Framework 다수의 객체(컬렉션)를 다루기 위한 표준화된 프로그래밍 방식 많은 데이터를 쉽고 편리하게 다룰 수 있는(저장, 삭제, 검색, 정렬) 다양한 클래스를 제공 ex) Vector, ArrayList, HashSet... 컬렉션 프레임워크의 핵심 인터페이스 1. List 순서가 있는 데이터의 집합. 중복 O 구현 클래스 : ArrayList, LinkedList, Stack, Vector ...2. Set 순서를 유지하지 않는 데이터의 집합. 중복 X 구현 클래스 : HashSet, TreeSet ... List와 Set의 공통 부분을 추출하여 정의한 것이 Collection 인터페이스*3. Map key와 value가 쌍으로 이루어진 데이터의 집합 순서..
[JavaFX] Scene Builder 설치 및 설정 Scene Builder를 드래그&드랍 방식으로 손쉽게 사용자 인터페이스를 제작할 수 있다. 1. Scene Builder 다운로드 페이지 접속 https://gluonhq.com/products/scene-builder/ Scene Builder - Gluon Drag & Drop,Rapid Application Development. Download Now Integrated Scene Builder works with the JavaFX ecosystem – official controls, community projects, and Gluon offerings including Gluon Mobile, Gluon Desktop, and Gluon CloudLink. Simple Drag gluon..
Java 배열 - 같은 데이터타입을 나열형의 값으로 구현한 집합체 - 정적 요소의 크기로 지정되어 있어서 처음 생성된 요소의 사이즈는 변경할 수 없는 정적형 - 나열된 값을 하나의 변수명으로 대입되어 값의 시작 주소를 참조하는 참조형 ** 메모리는 1 byte 당 하나의 주소(&)가 생긴다. int가 차지하는 4 byte 중 첫번째 byte의 주소가 해당 int의 주소가 됨 - 나열된 값은 요소(엘리먼트)라고 하며 전체 크기는 요소의 사이즈라고 한다. - 각 요소는 0번지 인덱스부터 나열된 값으르 저장하며 사이즈를 지정 후 대입할 수 있다 - 1차원과 다차원으로 나누어짐 [1차원 선언 방법] - 정적 할당 dataType 변수명 [] = {요소 ,,,}; // 나열형 값에 의해 사이즈가 정해진다 dataType [] ..
Java 인터페이스 - 상수와 추상 메서드로만 이루어져 있다 + 디폴트 메소드, 정적 메소드 (자바 8부터) + 프라이빗 메소드(자바 9부터) - 인터페이스에서 선언한 변수는 컴파일 시 상수로 변환된다 (public static final 예약어를 쓰지 않아도 쓴것과 동일) - 인터페이스를 구현한 클래스가 어떤 기능의 메소드를 제공하는지를 명시 - 하나의 인터페이스는 여러개의 인터페이스를 상속받을 수 있다 - 하나의 클래스는 여러개의 인터페이스를 구현하여 사용할 수 있다 --> 클래스는 인터페이스가 각각 가지고 있는 모든 메소드를 구현해야함 public interface IA { int k = 10; int y = 20; // 추상 메소드 public abstract void pnr(); void disp(); //stat..
Java class 04 - 추상클래스 - abstract 라는 키워드를 가진 클래스는 추상클래스, abstract 라는 키워드를 가진 메소드는 추상메소드라고 부른다. - public abstract class userName {} => 추상클래스 - public abstract void Test() ; => {} 없이 선언되는 메소드는 추상 메소드 - 추상클래스는 객체 생성이 불가능하다 - 추상클래스는 객체의 주소번지는 받을 수 있다 - 강제상속, 강제재정의의 목적을 가진다 --> 후손 클래스에서 공통적으로 구현하는 메소드는 구현하고, 후손 클래스마다 각각 다르게 구현해야 하는 메소드는 추상 클래스로 남겨둠 - 추상클래스를 상속받는 클래스는 추상 클래스가 선언한 추상 메소드를 반드시 재정의해야한다 --> 추상 메소드의 구현에 대한 책임을 후..
Java class 03 - 상속 - 클래스의 기능을 자유롭게 호출하고 기능을 확장하기 위해 먼저 선언된 클래스를 선조(super)로, 기능을 필요로하는 클래스를 후손(this)으로 관계(extends)를 가진 경우를 말한다 - 단일 상속(무조건 선조가 하나)을 원칙으로 하며 다중상속은 클래스 간에 허용되지 않는다 * 후손인 클래스를 선조로 상속받는 것은 가능 - 후손클래스는 선조클래스의 멤버변수와 메서드를 사용할 수 있다 -> 선조클래스를 상속받고 후손클래스에 필요한 추가적인 속성과 기능을 구현 public class 자식클래스 extends 부모클래스 { } 예제) public class AA { protected int a; protected int b; public AA(int a, int b) { this.a = a; this...