전체 글에 해당하는 글 292

  1. JDBC 맛보기 2022.06.15

    Music.java package doodoo.vo; import java.io.Serializable; import lombok.Getter; import lombok.Setter; @Getter @Setter public class Music implements Serializable{ private int mno; // 고유번호(시퀀스) private int cno; // 카테고리 번호 private String title; // 곡명 private String poster; // 포스터 private String singer; // 가수명 private String album; // 앨범명 private int idcrement; // 등폭 private String state; // 상태 } M..


  2. Oracle 설치 및 세팅(Windows x64) 2022.06.15

    Oracle Database XE https://www.oracle.com/database/technologies/xe18c-downloads.html Oracle SQL Developer https://www.oracle.com/tools/downloads/sqldev-downloads.html Oracle 삭제시 참고 msiexec /x {C220B7FD-3095-47FC-A0C0-AE49DE6E320A} SQL Plus 관리자 권한으로 실행 후 --계정 만들기 alter session set "_ORACLE_SCRIPT"=true; create user {$username} identified by {$password}; --권한 부여 grant create session to {$username}..


  3. 입출력(I/O) : Stream, File 2022.06.14

    입출력은 컴퓨터 내/외부의 장치와 프로그램 간의 데이터 교환하는 것이다. 외부에서 데이터를 읽어와서 번역까지 해서 적절히 사용할 수 있도록 하는 것까지 포함한다. (ex) 키보드로부터 데이터를 입력받음, println()을 통해 화면에 출력함 한쪽에서 다른 한쪽으로 데이터를 전달하기 위해서는, 두 대상을 연결하고 데이터를 전송할 수 있는 통로가 필요하다. → 스트림(stream) 스트림은 단방향통신만 가능하여 하나의 스트림으로 입/출력을 동시에 처리할 수는 없다. 스트림의 종류 1. InputStream / OutputStream (바이트 기반 스트림) 입력스트림 출력스트림 입출력 대상 FileInputStream FileOutputStream 파일 ByteArrayInputStream ByteArray..


  4. Generics, Annotation 2022.06.13

    @클래스 public class ClassName{ @멤버변수 private A a; @메서드 public void display() {} @매개변수 public void aaa(매개변수) @생성자 public ClassName() {} } 지네릭스(Generics) 다양한 타입의 객체를 다루는 메서드 또는 컬렉션 클래스에서 컴파일 시 타입 체크를 하는 기능이다. 객체의 타입 안정성을 높이고 형변환의 번거로움을 줄인다. 이를 통해 의도하지 않은 타입의 객체가 저장되는 것을 막아 주고, 소스가 간결해지도록 돕는다. 형변환이 잘못되었을 때 발생하는 오류 또한 줄일 수 있다. (ex) String으로 int를 받아 출력하는 경우 등↓ package day29_2; import java.util.*; publi..


  5. Collection(2) : Set, Map, Iterator, Stack&Queue 2022.06.13

    Collection FrameWork 컬렉션 프레임워크는 데이터 군을 저장하는 클래스들을 표준화한 설계다. 컬렉션 : 다수의 데이터(=데이터 그룹) / 프레임워크 : 표준화된 프로그래밍 방식 다수의 데이터를 다루는 데 필요한 다양하고 편리한 클래스를 제공한다. List 순서가 있고, 데이터 중복을 허용한다. (ex)데이터베이스 Set 순서가 없고, 데이터 중복을 허용하지 않는다. Map 순서가 없고, 데이터(value) 중복을 허용하나 key는 중복을 허용하지 않는다. Set 인터페이스 순서가 없기 때문에 같은 데이터를 저장할 경우 정확도가 떨어지므로 데이터 중복을 허용하지 않는다. List의 중복 데이터를 제거하기 위해 사용된다. 구현된 클래스 1) TreeSet : Red-Black tree라는 자료..


  6. Collection(1) : List 2022.06.10

    Collection FrameWork 컬렉션 프레임워크는 데이터 군을 저장하는 클래스들을 표준화한 설계다. 컬렉션 : 다수의 데이터(=데이터 그룹) / 프레임워크 : 표준화된 프로그래밍 방식 다수의 데이터를 다루는 데 필요한 다양하고 편리한 클래스를 제공한다. List 순서가 있고, 데이터 중복을 허용한다. (ex)데이터베이스 Set 순서가 없고, 데이터 중복을 허용하지 않는다. Map 순서가 없고, 데이터(값) 중복을 허용하나 key는 중복을 허용하지 않는다. List 인터페이스 순서가 있어 자동으로 인덱스번호가 부여되고, 데이터 중복이 가능하다. 앞부분의 데이터가 제거되면 순차적으로 데이터가 없는 위치가 없도록 조정된다. 다만 처리속도가 느리다. 구현된 클래스 1) ArrayList*** : 비동기 ..


  7. java.util package, java.text.Format 2022.06.09

    java.util 패키지는 유용한 클래스를 많이 제공한다. 자주 쓰이는 것만 우선 정리. 1. Random 클래스 난수를 얻게 해주는 클래스이다. 반환타입을 지정할 수 있으므로 Math.random()과 달리 정수가 필요할 때 형변환을 할 필요가 없다. public class RandomEx { public static void main(String[] args) { Random r = new Random(); int a = r.nextInt(100) + 1; // int범위 => 0~99발생 => 100은 제외 System.out.println(a); } } 2. regex 패키지 정규식(REGEX, REGular EXpression)? 텍스트 데이터 중 원하는 조건(패턴)과 일치하는 문자열을 찾기 위..


  8. java.lang package 2022.06.08

    java.lang 패키지는 자바 프로그래밍의 가장 기본적인 클래스를 포함한다. 우선 알아야 할 것은 Object, String, StringBuffer, Math, Wrapper 정도. → import문 없이도 사용할 수 있다. 1. Object 클래스 Object 클래스는 모든 클래스의 최고 조상 → 이 클래스의 멤버들은 모든 클래스에서 바로 사용이 가능하다. 멤버변수는 없고 메서드만 가지고 있다. method 설명 boolean equals(obj) 객체 자신과 객체 obj가 같은 객체인지 알려 준다. Object clone() 객체 자신의 복사본을 반환한다. void finalize() 객체가 소멸될 때 가비지 컬렉터에 의해 자동으로 호출된다. 이 때 수행되어야 하는 코드가 있을 때 오버라이딩한다...


  9. OOP(5) : 예외 처리 / try-catch, throw, finally 2022.06.07

    객체 지향 프로그래밍(OOP: Object-Oriented Programming) 1. 데이터 보호 패키지 / 접근제어자 / 캡슐화 2. 재사용 변경해서 사용(상속 : is-a) / 그대로 사용(포함 : has-a) 3. 다형성 오버라이딩 / 오버로딩 4. 형변환 5. 추상 클래스 / 인터페이스 +5 내부 클래스 6. 예외처리 ← 오늘은 여기! 예외처리 프로그램을 실행할 때 발생할 수 있는 에러에 미리 대비하는 코드이다. 비정상적인 종료를 방지하고 정상상태를 유지하기 위해 사용한다. *** 예외처리를 한다고 에러를 잡아주는 게 아니다. 에러를 건너뛰는 것이다. *** 에러 = 프로그래머의 실수 or 사용자의 입력 예외처리해 주어야 하는 유형은 크게 다음과 같다. (당연히 더있음) 파일 입출력, 읽기 → ..


  10. OOP(4) : 내부 클래스 2022.06.03

    갈수록 정리하는 데 시간이 오래 걸리는군... 객체 지향 프로그래밍(OOP: Object-Oriented Programming) 1. 데이터 보호 패키지 / 접근제어자 / 캡슐화 2. 재사용 변경해서 사용(상속 : is-a) / 그대로 사용(포함 : has-a) 3. 다형성 오버라이딩 / 오버로딩 4. 형변환 5. 추상 클래스 / 인터페이스 +5 내부 클래스 ← 오늘은 여기! 6. 예외처리 내부 클래스 아래와 같이 클래스 내에 선언되는 클래스이다. 대신 객체 생성이 번거로워짐. class A { //외부 클래스 ... class b{ //내부 클래스 ... } } 두 클래스가 서로 관계가 있을 때 서로 쉽게 접근할 수 있도록 하고, 외부에는 불필요한 클래스를 감추는 데 이용한다. static클래스만 st..