JDBC/JDBC 수업 7

#31. JDBC(Properties)

Properties를 이용하여 '동적코딩방식'을 적용한다. 기존의 자바소스코드 내부에 명시적으로 작성하였던 정적코딩방식(하드코딩)과는 다르게 외부파일을 만들어서 관리할 수 있다. => 유지보수에 용이함! Properties prop 개체를 만들면 prop.setProperties("키", "밸류"); prop.getProperties("키"); prop.store("키값", "별칭"); (키값으로 Stream을 넣어준다. new FileOutputStream("파일명") => 파일 기록) prop.load("키값"); (키값으로 Stream을 넣어준다. new FileInputStream("파일명") => 파일 읽어오기) 을 이용할 수 있다. 그래서, 1. JDBC Driver등록 구문, 내가 접속할 D..

JDBC/JDBC 수업 2023.08.14

#30. JDBC(model에 service클래스 추가), Template

Model에 MemberService 클래스를 하나 더 만들어서 Controller와 DAO의 역할을 분담해주자. 그전에, JDBC과정 중 반복적으로 쓰이는 구문들을 각각의 메소드로 정의해둘 곳을 메세지를 너무 많이 보내서 못지운대.. ORA-02292: integrity constraint (JDBC.SYS_C007242) violated - child record found TIP. 객체 생성시, try(객체생성구문) {} catch {} 이렇게 쓰면 finally{}안에 close() (자원반납) 을 따로 해주지 않아도 자동으로 close()가 됨. (주의) try안에 객체를 생성할 때 null이 아닌 값으로 초기화를 해주어야 함. ex. PreparedStatement와 ResultSet쓰고 반납..

JDBC/JDBC 수업 2023.08.11

#28. PreparedStatement

PreparedStatement : Connection객체가 가지고 있는 연결정보 DB에 SQL문을 전달하고 실행하고 결과도 받아오는 객체 - Statement(부모)와 PreparedStatement(자식) 관계 ** PreparedStatement의 특징 : SQL문을 바로 실행하지 않고 잠시 보관하는 개념 미완성된 SQL문을 먼저 전달하고 실행하기 전에 완성형태로 만든 후 실행만 함 미완성된 SQL문에 사용자가 입력한 값들이 들어갈 수 있는 공간을 ?(위치홀더)로 확보 - 차이점 1) Statement는 완성된 SQL문, PreparedStatement는 미완성된 SQL문 2) 객체 생성 시 Statement == conn.createStatement(); PreparedStatement == co..

JDBC/JDBC 수업 2023.08.09

#27. JDBC, Connection, Statement, ResultSet

------------------------------------ View ------------------------------------ 1. 사용자에게 값을 아이디를 입력받고, 사용자에게 변경할 값들을 입력받는다. 2. 값들을 Controller에게 넘겨준다. private void updateMember() { System.out.println("--- 회원 정보 변경 ---"); System.out.print("변경할 회원의 아이디를 입력해 주세요 > "); String userId = sc.nextLine(); System.out.print("새 비밀번호를 입력해 주세요 > "); String newPwd = sc.nextLine(); System.out.print("새 ..

JDBC/JDBC 수업 2023.08.08

#26. JDBC, Connection, Statement, ResultSet

26-1. 요약 JDBC를 이용하여 MVC모델을 구현할 수 있다. M (model) - VO(Value Object) VO(Value Object) => 값을 담는 역할 => DB테이블의 한 행에 대한 데이터를 기록할 수 있는 저장용 객체 유사 DTO(Data Transfer Object) DO(Domain Object) Entity bean VO 조건 1. 반드시 캡슐화를 적용 2. 모든 필드에 대한 getter/setter 메서드를 작성할 것 3. 기본생성자(필수!) 및 매개변수 생성자를 작성할 것 - DAO(Data Access Object) JDBC용 객체 - Connection : DB의 연결정보를 담고 있는 객체 - (Prepared)Statement : 해당 DB에 SQL문을 전달하고 실행한..

JDBC/JDBC 수업 2023.08.07