본문 바로가기

전체 글161

SQL SQL DML(Data Manipulation Language) 개념 데이터베이스의 데이터를 관리하는 데 사용 자동으로 커밋되지 않아 롤백할 수 있다. 실제 테이블에 영향을 주기 위해서는 커밋을 해야 한다. 종류 SELECT 데이터 조회 INSERT 데이터 삽입 UPDATE 데이터 수정 DELETE 데이터 삭제 테이블에 있는 모든 데이터를 삭제할 경우 TRUNCATE 사용 권고 삭제된 데이터의 로그를 TRUNCATE에서는 저장하지 않아 시스템 부하가 적지만 롤백이 불가 MERGE 데이터가 테이블에 존재하지 않으면 INSERT, 존재하면 UPDATE CALL PL/SQL 또는 JAVA 서브 프로그램 호출 EXPLAIN PLAN 데이터 접근 경로 해석 LOCK TABLE 동시성 제어 DDL(Data Defi.. 2023. 3. 13.
추상 클래스와 인터페이스 추상 클래스와 인터페이스 Abstract Class 개념 하나 이상의 추상 메서드를 포함하고 있는 클래스 상속을 통해 하위 클래스가 구현하도록 강제하는 클래스 class 앞에 abstract를 선언하여 구현 특징 다중 상속이 불가능 new 키워드를 통해 직접 객체 생성 불가 인터페이스와 다르게 final, static이 아닌 필드를 가질 수 있고 접근제어자 모두 사용 가능 Interface 상수(static final)와 추상 메서드(abstract)의 집합 특징 다중 상속이 가능 추상 클래스와 다르게 일반 메서드를 포함할 수 없다. 모든 메서드는 public abstract, 모든 멤버 변수는 public static final로 선언해야 한다. 추상 클래스와 인터페이스 공통점과 차이점 공통점 메서드의.. 2023. 3. 12.
의존성 주입 의존성 주입 종류 생성자 주입 생성자를 통해 의존성을 주입하는 방식 필드 주입 필드를 통해 의존성을 주입하는 방식 Setter 주입 setter method를 활용해 의존성을 주입하는 방식 생성자 주입 권장 순환참조 방지 setter 주입이나 필드 주입은 빈 객체를 생성 후 의존성을 주입하여 빈 객체 생성 시점에 순환 참조 발생 여부를 확인할 수 없다. 생성자 주입은 빈 객체를 생성하는 시점에 생성자 파라미터에 빈 객체를 찾아 주입한 뒤 빈 객체를 이용하여 생성한다. 애플리케이션 구동 시점에서 순환 참조를 검출할 수 있다. Final 키워드 사용 가능 생성자 주입은 final 키워드를 사용할 수 있어 빈 객체 변경으로 인한 NPE를 예방 가능 애너테이션 활용 가능 생성자 주입은 애너테이션(@Require.. 2023. 3. 11.
접근 제어자 접근 제어자 개념 접근 제어자 변수, 메서드, 생성자에 대해 접근 권한을 지정 가능 public, protected, private, default(아무것도 붙이지 않는 경우)로 구분 종류 public 모든 영역에서 접근 가능 protected 해당 패키지와 상속받은 클래스에서 접근 가능 default 해당 패키지에서만 접근 가능 private 클래스 내부에서만 접근 가능 목적 자바의 특성인 캡슐화를 실현 외부에서의 접근을 제한하여 정보를 은닉하는 효과 외부에서 변수 값을 잘못 변경할 수 있기 때문에 setter나 getter를 통해 값을 수정 및 조회하여 안전한 코드 작성 Reference https://peemangit.tistory.com/394 2023. 3. 10.