프로그래밍
-
프로세스, 쓰레드 Thread프로그래밍/JAVA 자바 2021. 9. 5.
간단히 말하자면 동작하고 있는 프로그램 => 프로세스 프로세스는 보통 한개의 작업을 함. 그러나 쓰레드를 이용하면 하나의 프로세스에서 두가지 이상의 일을 동시에 할 수 있음. 멀티 태스킹 생각하면 이해가 쉬움 ex) 밥을 먹으면서 핸드폰을 하는 행위도 쓰레드라 볼 수 있음. 스레드 클래스를 상속 받기 package threadEx; public class Ex001_Thread { public static void main(String[] args) { MyThread1 t = new MyThread1(); t.start(); // 스레드 시작 try { for(int i=1; i
-
데이터베이스 모델링 / 정규화(정규형)프로그래밍/DBMS 2021. 9. 2.
모델링이란 단순하게 말하자면 데이터베이스에 들어갈 내용들을 시각적으로 즉 눈으로 보기 편하게 하기 위해서 하는 것 모델링을 통해 복잡한 데이터들을 추상화 - 현실세계를 일정한 형식에 맞춰 표현 단순화 - 현실세계를 약속된 규약에 의한 표기법이나 언어로 표현해서 좀 더 이해하기 쉽게 명확화 - 누구나 이해하기 쉽게 애매모호한 것들을 제거 를 해야한다. 쉽게 말하자면 일반인한테도 이러이러해서~ 뭘 할거에요~ 설명했을때 이해 할 수 있도록 DB를 풀어서 표현하는거라 보면 된다. 모델링의 3가지 종류 ! 개념적 모델링 쉽게 말하자면 ER 다이어그램을 그려서 눈으로 보기 편하게 한다는것 예를 들면 이런식으로 다이어그램으로 표시하면 한눈에 뭘 하고자 하는지 알 수 있다. 논리적 모델링 ER다이어그램을 사용해서 관계..
-
자바DB / CallableStatement프로그래밍/JAVA 자바 2021. 9. 2.
CallableStatement 간단히 말해서 오라클에서 시퀀스를 만들고 그걸 자바에서 불러온다고 생각하면 된다. 시퀀스는 쿼리문을 편하게 미리 작성해 놓는거니까 자바에서도 단순히 불러오기만 하면 된다. 예제 분석을 위해 오라클에 미리 테이블과 시퀀스를 작성해두자. 이대로 score 테이블 먼저 작성 이후에 프로시저 작성 -- 프로시저 만들기 CREATE OR REPLACE PROCEDURE insertScore( pHak IN score.hak%TYPE, pName IN score.name%TYPE, pBirth IN score.birth%TYPE, pKor IN score.kor%TYPE, pEng IN score.eng%TYPE, pMat IN score.mat%TYPE ) IS BEGIN INSE..
-
자바DB연동 / PreparedStatement 활용 예제프로그래밍/JAVA 자바 2021. 8. 30.
PreparedStatement = 단순하게 보자면 Statement보다 좋다고 생각하면 된다. (Statement 거의 잘 안씀) = PreparedStatement의 특징은 전처리를 하는게 특징인데 이게 뭐냐면 미리 읽어 들인다는거다. Statementet는 실행 할때마다 전체를 전부 다시 읽어야 하는데 PreparedStatement는 그럴 필요가 없이 전처리를 해놔서 나중에 또 다시 읽을때는 바뀐 부분만 읽으면 된다는 것 속도감에서 차이가 크다. 바로 예제문을 보면서 해석 해보자. 예제 문제 내용 package db.member; import java.sql.SQLException; import java.util.List; public interface MemberDAO { public int i..
-
입출력 스트림 마무리프로그래밍/JAVA 자바 2021. 8. 29.
PrintWriter = 바이트가 아닌 문자를 출력할때 사용한다. package ioEx3; import java.io.PrintWriter; public class Ex013_PrintWirter { public static void main(String[] args) { // PrintWriter : 바이트가 아닌 문자를 출력할 때 사용 PrintWriter pw = new PrintWriter(System.out); pw.print("자바"); pw.print("오라클"); pw.println("ㅁㅇㄴㄴ"); pw.flush(); // true 옵션을 주면 flush()를 호출하거나 println()을 호출하면 출력 PrintWriter pw2 = new PrintWriter(System.out, ..
-
자바로 DB 연동해서 작업하기 Statement 활용 예제프로그래밍/JAVA 자바 2021. 8. 27.
보통 Statement보다 PreparedStatement를 사용한다. 여기선 Statement 사용 자바로 입력해서 오라클 데이타 베이스 서버에 값(데이터)들을 넣고 그 데이터들을 이용해서 자바에서 리스트를 불러오거나 삭제하거나 수정하거나 할거임. package score1; public class ScoreDTO { private String hak; private String name; private String birth; private int kor; private int eng; private int mat; private int tot; private int ave; private int rank; public String getHak() { return hak; } public void s..
-
자바로 오라클 DB 간섭하기 / Statement / ResultSet프로그래밍/JAVA 자바 2021. 8. 26.
Statement = 인터페이스 쿼리를 실행하는 인터페이스 package dbEx; import java.sql.Connection; import java.sql.Statement; import db.util.DBconn; public class Ex001_Statement { // 자바로 오라클DB에 간섭 public static void main(String[] args) { Connection conn = DBconn.getConnection(); // Statement 인터페이스 쿼리를 실행하는 인터페이스 Statement stmt = null; String sql; try { // 쿼리를 작성할때 마지막에 ; 붙이지 않는다. // 쿼리에 ; 붙이면 ORA-00933 발생 sql = "INSERT..
-
자바 오라클 DB(디비) 연동하기 /Maven Project프로그래밍/DBMS 2021. 8. 25.
Group id = 패키지명 Artifact id = 클래식 형식 https://mvnrepository.com/artifact/com.oracle.ojdbc/ojdbc8/19.3.0.0 이 사이트에 가서 Maven 소스를 복사한다. 그리고 아까 열었던 pom창에 입력하고 엔터 쳐서 위 아래로 범위 만들어주고 복사한 maven 소스를 붙여 넣는다. 그리고 저장하고 오류가 안떠야 한다. 그리고 이렇게 패키지 2개와 클래스를 만들어준다. Ex0825는 잘 연결이 됐나 실험용이다 db 패키지에 DBconn에 아래 소스를 입력한다. package db.util; import java.sql.Connection; import java.sql.DriverManager; public class DBconn { pri..