본문 바로가기

Programming Languages/Java33

Chapter 33. Socket 통신 1. Socket 통신 ■ Socket 네트워크 상에서 돌아가는 두 개의 프로그램간 양방향 통신의 하나의 엔드포인트 엔드포인트는 ip주소와 port번호의 조합 데이터를 주고받을 수 있는 구조체 ■ Server Socket 클라이언트 소켓의 연결 요청을 대기하고, 연결 요청이 오면 클라이언트 소켓을 생성 후 통신 가능 socket()함수를 이용하여 소켓 생성 bind()함수로 ip와 port 번호를 설정 listen()함수로 클라이언트의 접근 요청에 수신 대기열을 만들어 몇개의 클라이언트를 대기시킬지 결정 accept()함수를 사용하여 클라이언트와의 연결을 기다림 ■ Client Socket 데이터 송/수신이 일어나는 것은 클라이언트 소켓 socket()함수를 이용하여 소켓 생성 connect()함수로 통.. 2023. 2. 7.
Chapter 32. 람다식 목차 1. 람다식 ■ 람다식이란? 람다식은 객체를 정의 및 생성함(익명클래스와 같음) 람다는 메소드가 주체임 람다는 추상메소드가 하나인 인터페이스만 정의 가능 독립적으로 존재 불가능하기 때문에 적용 가능한 대상 필요 ■ 람다식 매개변수 매개변수의 자료형을 생략 가능 매개변수의 이름 변경 가능 매개변수가 하나이면 매개변수를 감싸는 괄호 생략 가능 ■ 람다식 구현부 구현부의 명령이 하나일 때 중괄호 생략 가능 중괄호를 생략하고 리턴 자료형이 정해져 있으면 리턴값으로 사용됨 중괄호를 생략하면 return을 적을 수 없음 지역변수를 매개변수에 넣어 사용하지 않아도 바로 사용 가능 지역변수명과 같은 변수명을 매개변수명으로 사용 불가 ■ 인터페이스 기본 함수형 인터페이스(파라미터가 없거나 하나임) 함수형 인터페이스.. 2023. 1. 31.
Chapter 31. DB연동 회원 가입 프로그램 목차 1. DB연동 회원 가입 프로그램 ■ Config JDBC를 이용해 DB와 연동 package usermanagement.config; import java.sql.*; import java.util.Properties; import java.util.Vector; /** * Manages a java.sql.Connection pool. * * @author Anil Hemrajani */ public class DBConnectionMgr { private Vector connections = new Vector(10); // JDBC 드라이버 로딩 private String _driver = "com.mysql.cj.jdbc.Driver", // jdbc프로토콜을 사용하며 mysql데이터베이스.. 2023. 1. 26.
Chapter 30. JDBC 목차 1. JDBC(Java Database Connectivity) ■ JDBC란? 자바에서 데이터베이스에 접속할 수 있도록 하는 자바 AP 데이터베이스에서 자료를 쿼리하거나 업데이트하는 방법 제공 JDBC 구조는 아래 이미지를 참조 ■ 데이터베이스 연결 데이터베이스와 연결을 위해DBConnectionMgr 클래스를 사용 DBConnectionMgr 클래스에서 드라이버, 데이터베이스 주소, 유저, 비밀번호를 설정하면 됨 MySQL의 포트번호는 3306 ■ DML(Data Manipulation Language) DML은 CRUD역할을 하는 Insert, Select, Update, Delete로 구성 자바에서 MySQL로 데이터베이스를 연결하여 해당 쿼리 실행 가능 Select를 제외한 명령어는 exe.. 2023. 1. 26.
Chapter 29. WindowBuilder 목차 1. WindowBuilder ■ WindowBuilder란? Swing, SWT와 같은 자바 라이브러리를 기반으로 코드를 직접 작성하지 않고도 GUI를 시각적으로 간단하게 만들 수 있는 도구 WindowBuilder를 통해 디자인 구현 가능 ■ WindowBuilder 설치 Help에서 Eclipse Marketplace 클릭 Windows 검색 후 WindowBuilder Current 설치 Confirm 후 동의하여 종료 2. 예시 ■ User package usermanagement.entity; import lombok.Builder; import lombok.Data; @Builder @Data public class User { private String username; private.. 2023. 1. 17.
Chapter 28. 익명클래스 목차 1. 익명클래스 ■ 익명클래스란? 임시적으로 구현된 객체이며 클래스 파일로 저장되어 있지 않음 다른 클래스에서 사용 불가 딱 한번만 생성 가능 한번만 사용하는 경우는 클래스로 만들 필요가 없기 때문에 익명 클래스로 사용 추상클래스도 가능함 2. 예시 ■ Calculator package j22_익명클래스; public interface Calculator { public int calc(int x, int y); } ■ Addition package j22_익명클래스; public class Addition implements Calculator { @Override public int calc(int x, int y) { return x + y; } } ■ Main package j22_익명클래스.. 2023. 1. 17.