분류 전체보기34 [Spring] IoC 컨테이너와 설정 방법 📌 DI(Dependency Injection)의존성 주입은 객체를 생성할 때, 그 객체가 의존하고 있는 다른 객체들을 외부에서 주입해 주는 디자인 패턴이다.interface MessageService { void sendMessage(String message, String receiver);}class EmailService implements MessageService { public void sendMessage(String message, String receiver) { // 이메일 보내기 로직 }} 위 코드에 있는 MessageService를 MyApplication에서 의존하고 있다면 다음과 같은 코드를 작성할 수 있다. class MyApplication .. 2024. 5. 1. @ResponseBody와 ReponseEntity 📌 HTTTP와 메시지 구조웹 애플리케이션에서는 데이터 송수신이 자주 일어난다. HTTP는 웹에서 이루어지는 데이터 교환에 적용되는 규약으로, 서버와 클라이언트 간에 통신을 위해서는 정해진 형식의 HTTP 메시지를 교환한다. 일반적으로 서버 응답은 다음과 같은 구조를 가진다. start-line: 프로토콜 버전과 요청 수행에 대한 성공 여부를 나타내는 상태 코드headers: 메시지 body에 대한 부가적인 설명empty line: 요청에 대한 모든 메타 정보가 전송되었음을 알림body: 응답과 관련된 문서 📌 Spring의 응답 생성Spring에서는 HTTP 응답을 만들 때, 상태코드와 Body에 들어갈 내용을 함께 구성해서 객체를 만들어야 하고, 프레임워크 사용 시 다음과 같은 두 가지 응답.. 2024. 4. 28. [Java] Enum을 비교해 보자 Java의 값 비교 방식 자바에서 일반적으로 참조형 객체는 equals() 메서드를, 원시형(primitive type)은 == 연산자를 이용해 비교한다. 1. equals() 메서드 equals()는 Object 클래스의 메서드이며 내부적으로는 == 연산자와 동일하게 주소값 비교를 수행한다. String 클래스와 같은 경우, 메서드 오버라이딩을 통해 문자열 간 비교가 가능해 동등성을 검증할 수 있다. 2. == 연산자 == 연산자의 경우 주소값을 비교하기에 객체의 동일성을 검증하는 방식에 해당된다. 원시 타입의 경우 값 비교가 가능하지만, 참조 타입에 대해서는 동등성이 아닌 동일성을 비교한다. Enum 비교 방식 Enum은 원시 타입이 아니지만, 싱글톤이라는 특징이 있다. 즉, 자바에서 Enum의 인스.. 2024. 4. 15. ARP(Address Resolution Protocol) 🤔 ARP란? 데이터 통신을 위해서는 물리적 주소인 MAC 주소와 논리적 IP 주소 두 개가 사용된다. IP 주소와 NIC에 할당된 MAC 주소는 연관성이 없기 때문에, 둘을 연계시키기 위해 ARP라는 프로토콜을 사용한다. 호스트에서 통신할 때 출발지와 목적지 IP 주소는 알 수 있지만, 상대방의 MAC 주소를 알 수 없어 2계층 캡슐화를 수행할 수 없다. 상대방의 MAC 주소를 알아내려면 ARP 브로드캐스트를 이용해 네트워크 전체에 상대방의 MAC 주소를 질의해야 한다. ARP 브로드캐스트를 받은 목적지는 ARP 프로토콜을 이용해 자신의 MAC 주소를 응답한다. 해당 작업이 완료되면 출발지 호스트와 목적지 모두 상대방에 대한 MAC 주소를 학습하게 되고, 2계층 캡슐화가 되어 패킷을 전달할 수 있게 된.. 2024. 4. 15. 이전 1 2 3 4 5 6 7 ··· 9 다음