본문 바로가기

Backend53

Spring Bean Life Cycle / 스프링 빈 생명주기 What is a Spring Bean? A Spring bean is a Java object managed by the Spring IoC container. Why Understand the Spring Bean Life Cycle? A solid grasp of the bean life cycle empowers you to effectively manage resources, configure beans, and ensure proper initialization and cleanup. With this knowledge, you can optimize your application’s performance, prevent memory leaks, and implement custom logic.. 2023. 11. 7.
[자바의 신] 29장 (ongoing) 29장 - 이제 주요 API도 알아봤으니 정리해봅시다 자바의 예약어 타입 관련 예약어 byte short int long float double char boolean 클래스, 메서드, 변수 선언, 객체 생성과 관련된 예약어 package import interface abstract class enum implements extends private protected public final synchronized void static return assert native new null strictfp super this transient volatile instanceof 조건 및 반복문과 관련 있는 예약어 if else switch case default for do while continue br.. 2022. 8. 31.
[자바의 신] 28장 (ongoing) 28장 - 다른 서버로 데이터를 보내려면 어떻게 하면 되나요? 네트워킹(networking) 사용자들이 바로 옆에 있는 장비와 데이터를 주고 받는 작업 p.756 +++ 네트워크의 일반적인 레이어 +++ osi 7 layer TCP (Transmission Control Protocol) UDP (User Datagram Protocol) 연결 기반 프로토콜 상대방이 데이터를 받았는지 확실히 보장해줌 But 내부적으로 처리되는 절차 매우 복잡 UDP보다 비싸고 느리며 무거움 다른 장비가 데이터를 제대로 받았는지에 대한 보장 x 이번에 데이터를 받지 않아도 다음에 받는 데이터를 사용해도 되는 경우에 사용(데이터 유실이 있어도 문제 없을 때) 자바로 TCP 통신 시, 자바에서 제공하는 API 사용 = 애플리.. 2022. 8. 31.
[자바의 신] 27장 (ongoing) 27장 - Serializable과 NIO도 살펴 봅시다 Serializable 정의 Serializable 인터페이스 java.io 패키지 인터페이스의 API에 선언된 변수나 메서드 없음 용도 생성한 객체를 파일로 저장하거나 저장한 객체를 읽거나 객체를 다른 서버로 보내거나 다른 서버에서 생성한 객체를 받을 때 역할 Serializable 인터페이스 구현(implements) 시 JVM에서 해당 객체는 저장하거나 다른 서버로 전송할 수 있게 해줌 serialVersionUID Serializable 인터페이스 구현 후 serialVersionUID라는 값 지정해주는 것을 권장함(별도 지정 안 하면 자바 소스가 컴파일될 때 자동으로 생성됨) static final long serialVersionUID .. 2022. 8. 18.
[자바의 신] 26장 (ongoing) 26장 - 파일에 있는 것을 읽고 쓰려면 아이오를 알아야죠 I/O 역할 파일 읽거나 저장할 때 다른 서버나 디바이스로 보낼 때 I/O I = Input / O = Output 입력과 출력 통칭하는 용어 JVM을 기준으로 읽을 때 Input / 파일로 쓰거나 외부로 전송 시 Output 용어 사용 여기서의 Input과 Output : JVM 기준임을 꼭 기억해두기 초기 I/O JDK 1.4 ~ Java 7 ~ java.io 패키지에 있는 클래스만 제공 바이트 기반의 데이터 처리 위해 여러 종류의 스트림(Stream) 클래스 제공 읽기 = InputStream / 쓰기 = OutputStream 자바의 스트림 = 끊기지 않는 연속적인 데이터 바이트 아닌 char 기반 문자열로만 된 파일 작업 시 Reader.. 2022. 8. 18.
[자바의 신] 25장 (ongoing) 25장 - 쓰레드는 개발자라면 알아두는 것이 좋아요 단일 쓰레드(Thread) java라는 명령어 실행 시 결과 출력하고 끝냄 ➡ 한 번 실행해 놓고, 계속 기능들 제공하는 프로그램 ex) JSP, Servlet 프로세스가 시작되는 과정 자바 프로그램 사용해 뒤에 클래스 이름 붙이고 엔터 치면 적어도 하나의 JVM 시작됨 보통 이렇게 JVM 시작되면 자바 프로세스(Proceses)가 시작됨 이 프로세스라는 울타리 안에서 여러 개의 쓰레드가 실행됨 위의 순서로 하나의 프로세스 내에 여러 쓰레드가 수행됨 But 여러 프로세스가 공유하는 하나의 쓰레드가 수행되는 일은 없음 java 명령어 사용해 클래스 실행시키면 자바 프로세스 시작 main() 메서드 수행되며 하나의 쓰레드가 시작됨 만약 많은 쓰레드 필요 시.. 2022. 8. 18.
[자바의 신] 24장 24장 - 자바랭 다음으로 많이 쓰는 애들은 컬렉션 ― Part3 (Map) Map 모든 데이터는 키와 값이 존재 키 없이 값만 저장 불가 값 없이 키만 저장 불가 키는 해당 Map에서 고유해야 값은 Map에서 중복이어도 상관 x 자바의 Map은 키와 값이 1:1로 저장됨 Map 인터페이스에 선언된 메서드 리턴 타입 메서드 이름 및 매개 변수 설명 V put(K key, V value) 첫 번째 매개 변수인 키를 갖는, 두 번째 매개 변수인 값을 갖는 데이터 저장 void putAll(Map Basic XML Property file http://www.test.com Adrian, Black 자바의 자료구조 종합 정리 2022. 8. 9.
[자바의 신] 23장 23장 - 자바랭 다음으로 많이 쓰는 애들은 컬렉션 ― Part2 (Set과 Queue) Set 데이터 중복 허용 x (순서 x) ➡ 데이터가 같은지 확인하는 작업이 핵심 = 중복 방지 및 원하는 값 포함되어 있는지 확인 equals()와 hashCode() 구현이 매우 중요 HashSet TreeSet LinkedHashSet 순서 전혀 필요 없는 데이터를 해시 테이블(hash table)에 저장 Set 중 가장 성능 좋음 저장된 데이터의 값에 따라 정렬되는 Set red-black이라는 트리(tree) 타입으로 값이 저장됨 HashSet보다 약간 성능 느림 연결된 목록 타입으로 구현된 해시 테이블에 데이터 저장 저장된 순서에 따라 값이 정렬됨 성능은 가장 나쁨 성능 차이 발생 이유 : 데이터 정렬 r.. 2022. 8. 9.
[자바의 신] 22장 22장 - 자바랭 다음으로 많이 쓰는 애들은 컬렉션 ― Part1 (List) 자바의 컬렉션 목록성 데이터를 처리하는 자료 구조를 통칭 자료 구조 Data Structure 어떤 정보를 담는 것 하나의 데이터가 아닌 여러 데이터 담을 때 사용 ex) 배열, DTO, ... 배열 가장 기본적인 자료 구조 성능상이나 메모리 효율면에서 가장 좋음 But 그 크기가 정해져 있있을 때 유용 자바의 데이터 담는 자료 구조 List Set Queue Map 순서 있는 목록 순서 중요하지 않음 먼저 들어온 것이 먼저 나감 키-값(key-value)으로 저장됨 Collection Collection 인터페이스 선언 public interface Collection extends Iterable Iterable 인터페이스.. 2022. 8. 9.