일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
31 |
- 오라클 캐릭터셋 변경
- ORA-00922
- 서평단
- 오라클 캐릭터셋 확인
- Oracle 윈도우 설치
- ORA-12899
- Oracle Express Edition
- 무료 오라클 설치
- ora-01722
- Oracle 18c HR
- Oracle 18c 설치
- oracle
- 윈도우 Oracle
- Orace 18c
- 오라클 캐릭터셋 조회
- 무료 오라클 데이터베이스
- Oracle 초기 사용자
- Oracle 18c HR schema
- Oracle 사용자명 입력
- oracle 18c
- Oracle 테이블 띄어쓰기
- Oracle 테이블 대소문자
- 비전공자를 위한 데이터베이스 입문
- Oracle 사용자명
- Today
- Total
목록Development (116)
The Nirsa Way

equals는 일반 규약을 지켜 재정의하라 - equals를 재정의하지 않아야 할 4가지 상황 일반적으로 equals는 아래의 상황 중 하나에 해당한다면 재정의 하지 않는 것이 좋습니다.각 인스턴스가 본질적으로 고유하다.인스턴스의 논리적 동치성(logical quality)을 검사할 일이 없다.상위 클래스에서 재정의한 equals가 하위 클래스에도 딱 들어맞는다.클래스가 private 이거나 pacakge-private이고 equals를 호출할 일이 없다. 1. 각 인스턴스가 본질적으로 고유하다.값을 표현하는 클래스가 아니라 동작을 수행하는 개체일 경우 equals의 재정의하지 않는 것이 적절합니다. 예를 들어 Thread, Excutor, Rannable, Connection, Stream 같은 객체..

try-finally 보다는 try-with-resources를 사용하라try-finally의 경우 인스턴스를 명시적으로 close()를 호출하여 닫아주어야 합니다. 만약 개발자의 실수로 자원을 제대로 닫지 않는다면 성능의 문제가 발생할 가능성이 있으며 try와 finally 모두 예외가 발생된다면 try에서 발생한 예외가 덮어씌워질 수 있습니다.file.txt의 첫번째 줄을 읽은 후 출력하는 코드를 try-finally를 사용하여 구현한다고 하면 아래와 같이 될겁니다.finally를 주의 깊게 본다면 reader가 null이 아닌지 체크(NPE 방지)를 하고 close()를 수행합니다. 하지만 close() 수행 중 IOException이 발생할 가능성이 있으므로 또 다시 try-catch를 사용하여..
※ 인프런 강의 Spring AI 실전 가이드: RAG 챗봇 만들기를 실습하는 내용입니다.※ 해당 강의 코드를 코틀린 → 자바로 언어를 바꿔 진행하기 때문에 일부 코드 및 구현부가 다를 수 있습니다.※ 실습이지만 코드를 직접 까보는 내용을 기록하는 포스팅이므로 강의 내용과 상이할 수 있습니다.[Spring AI] #1. LLM 호출 실습 시작 – 구조 먼저 실행해보기[Spring AI] #2. AiConfig 분석 – OpenAI API 연결 설정 방법[Spring AI] #3-1. ChatService 분석 – 메시지 생성과 모델 호출 흐름[Spring AI] #3-2. ChatService 분석 – buildRequestPrompt()로 요청 준비하기[Spring AI] #3-3. ChatServic..

※ 인프런 강의 Spring AI 실전 가이드: RAG 챗봇 만들기를 실습하는 내용입니다.※ 해당 강의 코드를 코틀린 → 자바로 언어를 바꿔 진행하기 때문에 일부 코드 및 구현부가 다를 수 있습니다.※ 실습이지만 코드를 직접 까보는 내용을 기록하는 포스팅이므로 강의 내용과 상이할 수 있습니다.[Spring AI] #1. LLM 호출 실습 시작 – 구조 먼저 실행해보기[Spring AI] #2. AiConfig 분석 – OpenAI API 연결 설정 방법[Spring AI] #3-1. ChatService 분석 – 메시지 생성과 모델 호출 흐름[Spring AI] #3-2. ChatService 분석 – buildRequestPrompt()로 요청 준비하기[Spring AI] #3-3. ChatServic..

finalizer와 cleaner 사용을 피하라객체 소멸자 finalizer와 cleaner는 GC에 의해 실행되며 실행 시점 보장이 없기에 예측되지 않습니다. 즉 GC의 알고리즘에 따라 천차만별이며 테스트 과정의 JVM에서는 잘 동작 했지만 배포된 서버에서는 정상적인 동작을 하지 않아 문제가 발생할 수 있습니다.아래의 코드는 finalize()의 예시 코드이며 객체 생성한 다음 참조 해제하여 gc를 요청하는 코드입니다. 즉 gc는 obj 객체의 참조가 비워져 있으므로 메모리를 수거하려고 할 것 입니다. 또한 finalize()를 오버라이딩 했음으로 GC가 해당 객체를 수거할 때 finalize() 메서드가 호출됩니다.public class Test { @Override protected vo..
다 쓴 객체 참조를 해제하라메모리 누수(Member Leak)을 방지하기 위해 다 쓴 객체는 참조를 해제하라는 말 뜻입니다. 일반적으로 자바에서는 GC(Garbage Collector)가 객체를 회수하지만 GC의 특성상 "해당 객체를 참조하는 곳이 없어야 수거" 합니다.즉, 더 이상 객체를 사용하지 않지만 어디선가 참조되고 있다면 GC는 해당 객체를 수거하지 않으며 메모리 누수가 발생하는 경우가 생길 수 있습니다. 예시는 아래와 같은 코드입니다.public class Stack { private Object[] elements; private int size = 0; public Stack() { elements = new Object[10]; } public v..

※ 인프런 강의 Spring AI 실전 가이드: RAG 챗봇 만들기를 실습하는 내용입니다.※ 해당 강의 코드를 코틀린 → 자바로 언어를 바꿔 진행하기 때문에 일부 코드 및 구현부가 다를 수 있습니다.※ 실습이지만 코드를 직접 까보는 내용을 기록하는 포스팅이므로 강의 내용과 상이할 수 있습니다.[Spring AI] #1. LLM 호출 실습 시작 – 구조 먼저 실행해보기[Spring AI] #2. AiConfig 분석 – OpenAI API 연결 설정 방법[Spring AI] #3-1. ChatService 분석 – 메시지 생성과 모델 호출 흐름[Spring AI] #3-2. ChatService 분석 – buildRequestPrompt()로 요청 준비하기[Spring AI] #3-3. ChatServic..

※ 인프런 강의 Spring AI 실전 가이드: RAG 챗봇 만들기를 실습하는 내용입니다.※ 해당 강의 코드를 코틀린 → 자바로 언어를 바꿔 진행하기 때문에 일부 코드 및 구현부가 다를 수 있습니다.※ 실습이지만 코드를 직접 까보는 내용을 기록하는 포스팅이므로 강의 내용과 상이할 수 있습니다.[Spring AI] #1. LLM 호출 실습 시작 – 구조 먼저 실행해보기[Spring AI] #2. AiConfig 분석 – OpenAI API 연결 설정 방법[Spring AI] #3-1. ChatService 분석 – 메시지 생성과 모델 호출 흐름[Spring AI] #3-2. ChatService 분석 – buildRequestPrompt()로 요청 준비하기[Spring AI] #3-3. ChatServic..

※ 인프런 강의 Spring AI 실전 가이드: RAG 챗봇 만들기를 실습하는 내용입니다.※ 해당 강의 코드를 코틀린 → 자바로 언어를 바꿔 진행하기 때문에 일부 코드 및 구현부가 다를 수 있습니다.※ 실습이지만 코드를 직접 까보는 내용을 기록하는 포스팅이므로 강의 내용과 상이할 수 있습니다.[Spring AI] #1. LLM 호출 실습 시작 – 구조 먼저 실행해보기[Spring AI] #2. AiConfig 분석 – OpenAI API 연결 설정 방법[Spring AI] #3-1. ChatService 분석 – 메시지 생성과 모델 호출 흐름[Spring AI] #3-2. ChatService 분석 – buildRequestPrompt()로 요청 준비하기[Spring AI] #3-3. ChatServic..

※ 인프런 강의 Spring AI 실전 가이드: RAG 챗봇 만들기를 실습하는 내용입니다.※ 해당 강의 코드를 코틀린 → 자바로 언어를 바꿔 진행하기 때문에 일부 코드 및 구현부가 다를 수 있습니다.※ 실습이지만 코드를 직접 까보는 내용을 기록하는 포스팅이므로 강의 내용과 상이할 수 있습니다.[Spring AI] #1. LLM 호출 실습 시작 – 구조 먼저 실행해보기[Spring AI] #2. AiConfig 분석 – OpenAI API 연결 설정 방법[Spring AI] #3-1. ChatService 분석 – 메시지 생성과 모델 호출 흐름[Spring AI] #3-2. ChatService 분석 – buildRequestPrompt()로 요청 준비하기[Spring AI] #3-3. ChatServic..