본문 바로가기

java

231107 - Java mini project : 쇼핑몰 만들기 기간 : 231103 ~ 231107 쇼핑몰 프로그램 만들기 기본 구조 : CustomerDTO, ItemDTO, OrderListDTO, DAO, Main 괄호는 변수 이름 CustomerDTO id(id) : String 글자 수 8~16글자, 기본키, 변경 불가, 제약 조건은 오라클에서 pw(pw) : String 글자 수 8~16글자, not null 주소(address) : String 1단계로는 입력을 그대로 받기, 2단계는 도로명 주소 api에서 주소 정보 받아오기 번호(phone) : String - 000-0000-0000의 구조로 입력 필요. 이메일(email) : String @가 포함된 문자열 포인트(point) : int not null, 기본 값 0 회원 등급(grade) : i.. 더보기
백준 닷컴 단계 별로 풀어보기 25단계 1단계 동전 0 (백준 11047) 동전을 적절히 사용해서 그 가치의 합을 K로 만들려고 한다. 이때 필요한 동전 개수의 최솟값을 구하는 프로그램을 작성하시오. 첫째 줄에 N과 K가 주어진다. (1 ≤ N ≤ 10, 1 ≤ K ≤ 100,000,000) 둘째 줄부터 N개의 줄에 동전의 가치 Ai가 오름차순으로 주어진다. (1 ≤ Ai ≤ 1,000,000, A1 = 1, i ≥ 2인 경우에 Ai는 Ai-1의 배수) 첫째 줄에 K원을 만드는데 필요한 동전 개수의 최솟값을 출력한다. import java.io.*; import java.util.*; public class Step_1 { public static void main(String[] args) throws IOException { Buffere.. 더보기
백준 닷컴 단계 별로 풀어보기 24단계 1단계 구간 합 구하기 4 (백준 11659) 수 N개가 주어졌을 때, i번째 수부터 j번째 수까지 합을 구하는 프로그램을 작성하시오. 첫째 줄에 수의 개수 N과 합을 구해야 하는 횟수 M이 주어진다. 둘째 줄에는 N개의 수가 주어진다. 수는 1,000보다 작거나 같은 자연수이다. 셋째 줄부터 M개의 줄에는 합을 구해야 하는 구간 i와 j가 주어진다. 총 M개의 줄에 입력으로 주어진 i번째 수부터 j번째 수까지 합을 출력한다. import java.io.*; import java.util.*; public class Step_1 { static int n; static int m; static int[] arr; static int[] sums; public static void main(String[].. 더보기
231031 (Oracle) 조인 조인의 필요성 여러 테이블에 걸친 데이터를 한번에 조회하기 위해서 조인 기술이 필요하다. 조인 여러 테이블에 흩어져 있는 정보 중에서 사용자가 필요한 정보만 가져와서 가상의 테이블처럼 나들어서 결과를 보여준다. cartesian product 두개 이상의 테이블이 조인될 때 where절에 공동되는 컬럼에 의한 조인이 발생되지 않아 모든 데이터가 검색 결과로 나타나는 경우 테이블에 존재하는 모든 데이터가 검색 결과로 나타난다. 단순히 from을 나열할 경우 중복 데이터의 처리가 이루어지지 않는다. equi join 조인 대상이 되는 두 테이블에서 공통적으로 존재하는 컬럼의 값이 일치되는 행을 연결하여 결과를 보여준다. 연결 방법은 where 테이블.일치하는 컬럼 = 테이블 . 일치하는 컬럼 조인된 테.. 더보기
백준 닷컴 단계 별로 풀어보기 23단계 1단계 알고리즘 수업 - 피보나치 수 1 (백준 24416) 오늘은 n의 피보나치 수를 재귀호출과 동적 프로그래밍으로 구하는 알고리즘을 배웠다. 재귀호출에 비해 동적 프로그래밍이 얼마나 빠른지 확인해 보자. 아래 의사 코드를 이용하여 n의 피보나치 수를 구할 경우 코드1 코드2 실행 횟수를 출력하자. 첫째 줄에 n(5 ≤ n ≤ 40)이 주어진다. 코드1 코드2 실행 횟수를 한 줄에 출력한다 import java.io.*; import java.util.*; public class Step_1 { static int a; static int b; public static void main(String[] args) throws IOException { Scanner sc = new Scanner(Syst.. 더보기
231030 (Java) 입출력 스트림(IO) 스트림 : 자바의 데이터는 스트림을 통해 입출력 된다. 프로그램이 데이터의 출발지인지, 도착지인지 여부에 따라 사용하는 스트림의 종류가 결정된다. 데이터 입출력에 필요한 API system.in/out : 콘솔 - 프로그램을 이어준다. API Application Programming Interface(애플리케이션 프로그램 인터페이스)의 줄임말 사용 설명서대로 사용해야 한다. 입출력 스트림의 예시 Scanner sc = new Scanner(system.in) : keyboard를 통해 정보를 받아온다. System.in : 가장 먼저 연결되는 스트림, 외부에서 들어오는 데이터를 받는다. InputStream 클래스 InputStream in = new System.in: 등으로 초.. 더보기
백준 닷컴 단계 별로 풀어보기 22단계 1단계 N과 M (1) (백준 15649) 1부터 N까지 자연수 중에서 중복 없이 M개를 고른 수열 첫째 줄에 자연수 N과 M이 주어진다. (1 ≤ M ≤ N ≤ 8) 한 줄에 하나씩 문제의 조건을 만족하는 수열을 출력한다. 중복되는 수열을 여러 번 출력하면 안되며, 각 수열은 공백으로 구분해서 출력해야 한다. 수열은 사전 순으로 증가하는 순서로 출력해야 한다. import java.io.*; import java.util.*; public class Step_1 { static int n; static int m; static int[] arr; static boolean[] check; static StringBuilder sb = new StringBuilder(); public static voi.. 더보기
231026 (Java) 프로세스와 스레드 프로세스 : 어플리케이션 실행시 운영체제로부터 메모리를 할당 받아 실행되는 것 스레드 : 프로세스 내부에서 진행되는 코드의 흐름 Java의 스레드 ToolKit : Window로부터 소리를 제공받아 사용한다. Toolkit tk = Toolkit.getDefaultToolkit(); tk.beep(); for (int i = 0; i < 5; i++) { tk.beep(); System.out.println("띠링"); try { Thread.sleep(1000 * 2); } catch (InterruptedException e) { e.printStackTrace(); } } for 반복문은 0.0001초 이내에 5번 동작하기 때문에 차이를 알 수 없다. 따라서 thread.sleep.. 더보기