일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 |
- Oracle Express Edition
- oracle
- Orace 18c
- Oracle 테이블 대소문자
- Oracle 윈도우 설치
- Oracle 18c HR
- Oracle 초기 사용자
- 오라클 캐릭터셋 변경
- oracle 18c
- 오라클 캐릭터셋 조회
- Oracle 사용자명
- 윈도우 Oracle
- 비전공자를 위한 데이터베이스 입문
- 무료 오라클 설치
- ORA-12899
- 오라클 캐릭터셋 확인
- ora-01722
- Oracle 사용자명 입력
- Oracle 18c HR schema
- Oracle 18c 설치
- ORA-00922
- Oracle 테이블 띄어쓰기
- 무료 오라클 데이터베이스
- 서평단
- Today
- Total
목록전체 글 (408)
Nirsa's Learning Lab
불필요한 객체 생성을 피하라이미 생성된 객체를 재사용할 수 있다면 새로운 객체를 만들지 말고 기존에 사용중인 객체를 재사용하자라는 의미로써 객체 생성에 의한 비용을 줄여 GC 및 메모리 낭비를 줄이기 위함입니다. 아래와 같은 코드가 있다면 new String()에 의해 코드가 실행될 때 마다 매번 새로운 객체를 heap에 생성합니다. 같은 값을 가지고 있으므로 기존 객체를 재사용하면 되지만, 매번 새로운 객체를 만들기 때문에 매우 비효율적으로 동작하게 됩니다.System.out.println(new String("hello")); // 새 객체 생성 1System.out.println(new String("hello")); // 새 객체 생성 2// 또는 String str = new String("he..
자원을 직접 명시할 경우객체가 직접 필요한 의존 객체를 생성하지 말고 외부에서 주입받도록 하여 결합도를 낮추자는 의미로 사용되며 의존 객체 주입 패턴이라고 불리웁니다. 아래의 코드에서는 자원을 직접 명시하여 특정 구현체에 대하여 강하게 결합된 형태를 확인할 수 있습니다.public class MailService { private final MailSender mailSender; public MailService() { this.mailSender = new SmtpMailSender(); // 직접 객체 생성 } public void sendWelcomeMail(String email) { mailSender.send(email, "어서오세요.", "참여..

기본 타입의 값 또는 관련 메서드를 모아놓는 용도인스턴스화를 막기 위해 "생성자를 안쓰면 되지 않나?" 라고 생각할 수 있지만, 개발자가 생성자를 구현하지 않을 경우 컴파일러가 public 기본 생성자를 만들어주기 때문에 private 생성자를 사용하여 인스턴스화를 막아야 합니다.우선 첫번째로 java.util.Math는 private 생성자를 사용하여 인스턴스화를 막아둔 모습을 확인할 수 있습니다. Math처럼 기본 타입의 값들을 모아놓는 용도로 사용하기 위해 인스턴스화를 막아두는 케이스가 있습니다. 두번째로는 아래의 코드처럼 모든 메서드가 static인 클래스에서도 모든 메서드가 정적 메서드이므로 인스턴스화를 할 이유가 없기 때문에 이러한 클래스를 구현할 때 private 생성자를 사용하여 인스턴스화..

싱글턴(Singleton) 이란?클래스의 인스턴스가 오직 하나만 생성이 가능하도록 보장하는 디자인 패턴 public static final 필드 방식의 싱글턴public static final을 사용하여 인스턴스를 생성하는 방식입니다. 하지만 리플렉션(AccessibleObject.setAccessible)에 의해 private 생성자를 호출할 수 있는 방법이 존재하여 싱글턴임을 100% 보장하지 않습니다.import java.lang.reflect.Constructor;import java.lang.reflect.InvocationTargetException;public class Main { public static void main(String[] args) throws NoSuchMethodEx..
점층적 생성자 패턴과 자바 빈즈 패턴점층적 생성자 패턴(Telescoping Consturctor Pattern)은 매개변수를 1개 받는 생성자, 2개 받는 생성자, 3개 받는 생성자와 같이 모든 매개 변수를 다 받는 생성자까지 늘려가는 형태로써 매개 변수가 들어오는 상황에 대한 모든 생성자가 만들어진 패턴입니다.아래와 같이 모든 필드에 대해 매개 변수가 있는 생성자를 만들어 사용합니다.public class Student { private String name; private int age; private String major; private String school; // 생성자1: 필수값만 public Student(String name) { this(..
정적 팩터리 메서드란?정적 팩터리 메서드는 객체를 생성하는 메서드이지만 일반적으로 사용되는 new 연산자를 사용하지 않는 메서드 입니다. 클래스 내부에 static 메서드로 용도에 따라 of(), valueOf(), getInstance(), form()를 생성하여 객체를 반환하는 메서드입니다.public class Main { public static void main(String[] args) { Person p = Person.of("Nirsa"); // 정적 팩터리 메서드를 사용하여 객체 생성 System.out.println(p.getName()); // Nirsa 출력 }}class Person { private String name; // 외부에서 생성자를 호출하여 객체를 생성할..
[정보보안기사] 스터디 1주차 발표 정리 1. 파일 시스템의 구성Linux 파일 시스템은 데이터를 효율적으로 저장하고 관리하기 위해 여러 구성 요소로 이루어져 있습니다. 주요 구성 요소는 다음과 같습니다:Boot Block: 운영 체제를 부팅하는 데 필요한 정보를 저장합니다.Super Block: 파일 시스템의 전반적인 정보를 담고 있습니다. 파일 시스템의 크기, 사용 가능한 블록 수, inode의 총 개수와 사용 현황 등이 포함됩니다.inode List: 파일이나 디렉토리와 관련된 메타데이터를 저장하는 inode들의 집합입니다.Data Block: 실제 파일 데이터가 저장되는 블록입니다. inode가 이 데이터 블록을 참조합니다. 2. inode란?Linux 파일 시스템에서 파일이나 디렉토리는 inod..

[정보보안기사-시스템] UNIX/Linux (passwd 파일, group 파일, 패스워드 변경, 입출력 재지정, 파이프/파이프라인 기능, 특수/메타문자) A. passwd 파일사용자 계정 정보를 저장하는 파일로써 구분자 : 를 기준으로 7개의 필드를 가짐경로 : /etc/passwd사용자 패스워드의 'x'는 'shadow 패스워드 정책'을 사용한다는 의미로써 패스워드를 설정하지 않았다는 것이 아님/etc/shadow 파일에 암호화된 패스워드를 저장하는 방식사용자ID(UID)는 시스템에서 사용자를 고유하게 식별하기 위한 ID같은 UUID가 서로 다른 계정에 설정될 수 있으며, 이 경우 시스템은 서로 다른 사용자 계정명을 사용하는 같은 사용자로 판단함root 계정의 UID는 0으로 예약되어 있으며, 일반 ..

[정보보안기사-시스템] 윈도우 인증 구조(인증 암호 알고리즘, Lan Manager 인증 수준, 패스워드 크랙킹) A. 개요아이디와 패스워드를 전달하여 인증하는 방식은 정보 노출 및 패스워드 재사용 공격에 매우 취약하기 때문에 운영체재 인증과 같은 높은 수준의 인증이 필요한 경우 적절하지 않음윈도우는 "Challenge & Response 방식"의 인증 구조를 사용하며 단계별 동작 방식은 아래와 같음인증 요청 : 인증하고자 하는 사용자가 윈도우 시스템에 인증 요청Challenge 값 생성 및 전송 : 인증 요청을 받은 서버는 특정 규칙 또는 랜덤한 Challenge 값을 생성하여 사용자에게 전달Response 값 생성 및 전송 : 사용자는 전달받은 Challenge 값과 사용자 패스워드 정보를 이용해 R..

윈도우 보안 식별자(SID:Securify Identifier) A. 개요사용자 또는 그룹에 부여되는 고유 식별번호로그인 시 접근 토큰(액세스 토큰)이 생성로그인한 사용자와 해당 사용자가 속한 그룹에 관련된 보안 식별자(SID) 정보가 담겨있음접근 토큰의 사본은 사용자에 의해 시작된 모든 프로세스에 할당SAM 파일(C:\Windows\System32\config\SAM)에 SID 정보가 저장 B. SID 구조S-1 : w윈도우 시스템 의미5-21 : 도메인 컨트롤러이거나 단독 시스템임을 의미4 24333100-3174512425-4165118588 : 해당 시스템의 고유 식별자로써 동일한 컴퓨터에 윈도우를 재설치해도 동일값을 가지지 않음500, 501, 1001 : 사용자 식별자(ID)500 : 관리자..