목록빅데이터/JAVA (37)
Practice makes perfect
DAO (Data Access Object) : 데이터 접근 객체 - sql문을 사용하여 DataBase와 연동 할 때 마다 갹체를 지정해줘야하는 것은 불편한 과정입니다. 이러한 불편하고 비효율적인 과정을 줄이기 위해서 고안한 방법이 DAO 입니다. DAO는 DB의 데이터를 다루기 위해 만들어진 객체입니다. 장점 - DataBase에서 효율적으로 쿼리를 받아드릴 수 있습니다. - DBMS를 변동하거나 수정사항이 있을 때, 소스를 통째로 고쳐야 한다면 번거로울 수 있습니다. 따라서 유지보수를 편하게 하기 위해 사용하도록 해줍니다. - DataSoure에 정보의 저장, 변경, 삭제, 검색 기능을 제공하기 위한 메소드가 선언이 가능합니다. public class DAO { //BasicDataSource ds..

프로젝트에서 오른쪽 버튼 클릭하여 Built Path -> Add External Archives 선택합니다. jar파일을 선택합니다. jar 파일을 선택하면 Referenced Libraries에 생깁니다. JDBC 드라이버 로딩과 Connection 생성 1.JDBC 드라이버 로딩 MySQL의 JDBC Driver Class를 로딩합니다. Class.forName(“driver”)을 이용해서 Driver Class를 로딩하면 객체가 생성되고, DriverManager에 등록됩니다. ex) Class.forName(“com.mysql.jdbc.Driver”) Driver 클래스를 찾지 못할 경우, ClassNotFoundException 예외가 발생 합니다. 2. Connection 생성 Connect..

DATABASE를 이클립스를 통해서 사용할 수 있도록 지원해줍니다. 환경설정을 해보도록 하겠습니다. database connections 오른쪽 마우스를 눌러 new를 선택합니다. 여러가지 Database를 연결되어 있는데 사용하고 있는 것으로 선택하세요. 저는 오라클이 지원하는 Database 사용하기 때문에 오라클을 선택하고 Next > Database 는 버전들도 중요합니다. 버전의 따라서 정보들이 다르기 때문에 세부적인 정보로 구체적인 세팅이 이루어져야 합니다. new driver definition 을 눌러줍니다. 저는 oracle thin 11 버전을 사용하고 있어서 선택해줍니다. jar파일을 찾아서 연결해줍니다. 내 컴퓨터를 사용할 때는 localhost로 변경해주고, 사용할 아이디, 비밀번..

기초적인 스윙 컴포넌트와 상속 관계 스윙 컴포넌트의 공통 메소드, JComponent의 메소드 ● JLabel, 레이블 컴포넌트 : 문자열이나 이미지를 컴포넌트화 하여 출력하기 위한 목적으로 사용합니다. 단순 텍스트 만을 가진 레이블 컴포넌트 생성 JLabel textLabel = new JLabel("사랑합니다"); 이미지를 가진 레이블 컴포넌트 생성 ImageIcon image = new ImageIcon("images/sunset.jpg"); JLabel imageLabel = new JLabel(image); 수평 정렬 값을 가진 레이블 컴포넌트 생성 ImageIcon image = new ImageIcon("images/sunset.jpg"); JLabel label = new JLabel("사..

SWING(UI)이란? : java에 프로그램 안에서 화면을 구성하는 것을 의미합니다. ● 특징 - 운영체제에 영향을 받지 않습니다. - jvm 안에 기능이 탑제 되어있습니다. - 클래스 이름이 J자로 시작합니다. - 화려하고 다양한 컴포넌트로 쉽게 GUI 프로그래밍을 할 수 있습니다. ●컴포넌트/ 컨테이너 컴포넌트 : 버튼, 텍스트 상자, 레이블 상자, 옵션/체크박스등(윈도우 컴포넌트) - 모든 스윙 컴포넌트는 javax.swing.JComponent를 상속 컴포넌트 예시) 컨테이너 : 컴포넌트를 담을 수 있는 클래스 - Frame, Panel(컨테이너 컴포넌트) - java.awt.Container 상속 - 컨포넌트가 컨테이너에 탑재 되어야 UI 출력이 가능합니다. UI 프로그램 샘플) ● 스윙 패키..

● TCP/IP 프로토콜 : TCP는 Transmission Control Protocol - 두 시스템 간에 신뢰성 있는 데이터의 전송을 관장하는 프로토콜입니다. - TCP에서 동작하는 응용프로그램 사례 : e-mail, FTP, 웹(HTTP) 등 : IP는 Internet Protocol - 패킷 교환 네트워크에서 송신 호스트와 수신 호스트가 데이터를 주고 받는 것을 관장하는 프로토콜입니다. - TCP보다 하위 레벨 프로토콜 +) IP 주소 : 네트워크 상에서 유일하게 식별될 수 있는 컴퓨터 주소입니다. - 숫자로 구성된 주소로 4개의 숫자가 ‘.’으로 연결되어있습니다. 예) 192.156.11.15 - 숫자로 된 주소는 기억하기 어려우므로 www.naver.com과 같은 문자열로 구성된 도메인 이름..

스트림(Stream)이란? : 프로그램을 연결해주어 입출력을 가능하게 하는 통로라고 할 수 있습니다. ● 스트림 입출력 - 버퍼를 가지고 순차적으로 이루어지는 입출력을 의미합니다. 자바의 입출력 스트림 - 입력 스트림 : 입력 장치로부터 자바 프로그램으로 데이터를 전달합니다. - 출력 스트림 : 출력 장치로 데이터 출력합니다. ● 자바의 입출력 스트림 특징 - 스트림의 양끝에 입출력장치와 자바 응용프로그램 연결 합니다. - 스트림은 단방향 : 입력과 출력을 동시에 하는 스트림은 없습니다. - 입출력 스트림 기본 단위 : 바이트 스트림의 경우 : 바이트 , 문자 스트림의 경우 : 문자(자바에서는 문자1개 : 2 바이트) - 선입선출 구조로 되어있습니다. 입력 스트림 : InputStream - 프로그램으로..

Thread 란? 사용자가 작성한 코드로서, JVM에 의해 스케줄링되어 실행되는 단위입니다. 쉽게 설명해서 하나의 프로세스 안에서 2가지 이상의 일을 수행하는 것과 같은 것과 같은 효과를 주는 것을 의미합니다. Java Thread - 자바 가상 기계(JVM)에 의해 스케쥴되는 실행 단위의 코드 블럭입니다. - 스레드의 생명 주기는 JVM에 의해 관리됩니다. JVM과 멀티스레드의 관계 - Thread 는 운영체제와 관련있는 기능으로 java 이외에 thread를 구현해주는 프로그램이 없습니다. - 하나의 JVM은 하나의 자바 응용프로그램만 실행합니다. - 자바 응용프로그램이 시작될 때 JVM이 함께 실행합니다. - 자바 응용프로그램이 종료하면 JVM도 함께 종료합니다. - 하나의 응용프로그램은 하나 이상..