본문 바로가기

분류 전체보기

(35)
#18 RestTemplate String url = "https://api.example.com/resource";MyRequestObject requestObject = new MyRequestObject();MyResponseObject responseObject = restTemplate.postForObject(url, requestObject, MyResponseObject.class);RestTemplate는 스프링 프레임워크에서 제공하는 클래스로, Java에서 RESTful 웹 서비스와의 상호작용을 단순화하는 역할을 합니다. RestTemplate는 REST API를 호출하고, HTTP 요청을 보내고, HTTP 응답을 처리하는 데 사용됩니다. RestTemplate는 다양한 HTTP 메서드(GET, POST, PUT, ..
#17 HttpServlet HttpServlet은 Java Servlet API의 일부로, HTTP 요청과 응답을 처리하는 웹 애플리케이션을 개발할 때 사용되는 서블릿 클래스다. HttpServlet은 javax.servlet.http 패키지에 포함되어 있으며, HTTP 프로토콜을 통해 웹 클라이언트(브라우저 등)와 서버 간의 통신을 처리하는 데 사용된다.    HttpServlet의 주요 기능과 특징:추상 클래스:HttpServlet은 추상 클래스이기 때문에 직접 인스턴스화할 수 없으며, 이를 상속받아 필요한 메서드를 구현해야 한다.기본 메서드:HttpServlet은 HTTP 요청의 다양한 유형(GET, POST, PUT, DELETE 등)을 처리하기 위한 기본 메서드를 제공한다. 이들 메서드는 필요에 따라 오버라이드하여 사용된..
#16 같은 타입의 Bean이 두 개일 때 스프링 프레임워크를 사용하다 보면, 동일한 타입의 빈(Bean)이 두 개 이상 존재할 때, 의존성 주입 시 어떤 빈을 선택할지 모호해지는 문제가 발생할 수 있습니다.  1. @Primary 애노테이션 사용하나의 빈을 기본 빈으로 지정하여 모호성을 해결하는 방법입니다. 주입받을 때 기본으로 사용될 빈에 @Primary 애노테이션을 추가합니다.import org.springframework.context.annotation.Bean;import org.springframework.context.annotation.Configuration;import org.springframework.context.annotation.Primary;@Configurationpublic class AppConfig { ..
#15 JPA Java Persistence API (JPA)는 자바에서 객체와 관계형 데이터베이스 간의 매핑을 관리하기 위한 자바 표준 명세입니다. JPA를 사용하면 개발자는 데이터베이스와의 상호작용을 객체 지향적으로 수행할 수 있으며, 이를 통해 데이터베이스 관련 코드를 간소화하고 유지보수성을 높일 수 있습니다. JPA는 Java EE 및 Java SE 애플리케이션에서 사용할 수 있습니다. Entity: JPA에서 Entity는 데이터베이스 테이블에 매핑되는 자바 객체를 의미합니다. 각 Entity는 데이터베이스의 테이블과 1:1로 매핑되며, 클래스에 @Entity 어노테이션을 붙여 정의합니다.\ @Entitypublic class User { @Id @GeneratedValue(strategy = Ge..
#14 GlobalExceptionHandler와 Http 상태코드 전역 예외 처리기(Global Exception Handler)는 애플리케이션의 모든 예외를 한 곳에서 처리할 수 있게 해주는 메커니즘입니다. 이를 통해 애플리케이션의 안정성을 높이고 예외 처리 로직을 중앙 집중화할 수 있습니다 Java Spring Boot에서는 전역 예외 처리를 위해 @ControllerAdvice와 @ExceptionHandler 어노테이션을 사용하여 전역 예외 처리기를 구현할 수 있습니다. 이를 통해 모든 컨트롤러에서 발생하는 예외를 중앙에서 처리할 수 있습니다. 다음은 Spring Boot 애플리케이션에서 전역 예외 처리기를 설정하는 방법의 예시입니다.  package com.example.demo.exception;import org.springframework.http.Htt..
#13 Spring 입문주차 <2주차 - 1> 영속성 Persistence를 한글로 번역하면 영속성, 지속성 이라는 뜻이 됩니다.객체가 생명(객체가 유지되는 시간)이나 공간(객체의 위치)을 자유롭게 유지하고 이동할수 있는 객체의 성질을 의미합니다. 영속성 컨텍스트를 좀 더 쉽게 표현해 보자면 Entity 객체를 효율적으로 쉽게 관리하기 위해 만들어진 공간입니다.   트랜잭션 트랜잭션은 DB 데이터들의 무결성과 정합성을 유지하기 위한 하나의 논리적 개념입니다.  쉽게 표현하자면 DB의 데이터들을 안전하게 관리하기 위해서 생겨난 개념입니다. 가장 큰 특징은 여러 개의 SQL이 하나의 트랜잭션에 포함될 수 있다는 점입니다. 이때, 모든 SQL이 성공적으로 수행이 되면 DB에 영구적으로 변경을 반영하지만 SQL 중 단 하나라도 실패한다면 모든 변경을 되돌립..
#12 Spring 입문주차 <2주차> url 보면 GET http://localhost:8080/hello/request/form/param?name=Robbie&age=95 ? 부터는 requestParam 방식으로 쿼리 스트링 시작이다 @GetMapping("/form/param") @ResponseBody public String helloGetRequestParam(@RequestParam String name, int age) { return String.format("Hello, @RequestParam. name = %s, age = %d", name, age); }에서 @RequestParam 생략 가능! @GetMapping("/form/param") @ResponseBody publi..
#11 Spring 입문주차 <1주차> 개발자 도구 : f12  API와 프로토콜의 개념https://velog.io/@dlife/API-%ED%94%84%EB%A1%9C%ED%86%A0%EC%BD%9C API & 프로토콜보통 웹 개발에서 API는 백엔드 서버가 제공하는 데이터나 기능에 프론트엔드 개발자가 접근할 수 있는 방법을 제공한다. 이를 통해 프론트엔드 개발자는 백엔드에서 제공하는 데이터나 기능을velog.io   API는 애플리케이션간 인터페이스이고TCP/IP같은 프로토콜은 통신 규약으로 네트워크 상에서 데이터를 주고 받기 위한 통신 시 지키는 규약이다 좀 더 쉽게 표현하자면 API는 연결 통로와 비슷한 개념으로'네이버 맵 API'라는 API가 있다고 가정 했을 때"네이버 서버(PC)에 있는 맵 기능을 다른 사용자들이 사용할 수 있게..