Back-End/Spring(17)
-
Hibernate Naming Strategies
혼자 공부할겸 프로젝트를 진행하다가 예상치못한 오류에 막혀서 많은 시간을 소요하였다.데이터베이스의 테이블에서 값을 전혀 불러오지 못하는 문제였다.아무리 찾아봐도 문제를 찾지 못하다가 혹시나 하는 마음에 모든 테이블을 조회해보았고 생성한 적 없는 테이블이 만들어져있는 것을 봤다.기존에 만든 테이블은 orderItems인데 새로 생성된 테이블은 order_items가 있었다.분명 엔티티에서 table(name="orderItems")로 작성해서 orderItems테이블과 매핑이 되어있을 것이라고 생각했는데 order_items테이블이 새로 생기며 여기와 매핑을 하고 있던 것이다. 이는 바로 Hibernate Naming Strategies의 Physical Naming Strategy의한 것이다. Hibe..
2024.06.26 -
JPA 기초 개념과 코드 예제 (Spring JPA 아님!!)
JPA(Java Persistence API)는 자바에서 관계형 데이터베이스를 다루기 위한 표준 API이다. JPA를 사용하면 객체 지향적인 방식으로 데이터베이스 작업을 처리할 수 있다. JPA의 주요 개념과 이를 활용한 코드 예제를 작성하겠다.엔티티(Entity)엔티티(Entity)는 데이터베이스 테이블과 매핑되는 클래스이다. JPA를 사용하면 데이터베이스의 테이블을 객체 지향적으로 표현할 수 있다. 엔티티 클래스는 @Entity 어노테이션을 사용하여 정의하며, 각 필드는 데이터베이스 테이블의 컬럼에 매핑된다.import jakarta.persistence.Entity;import jakarta.persistence.Id;import jakarta.persistence.GeneratedValue;imp..
2024.05.28 -
Spring MVC의 @RequestParam과 @PathVariable 사용법
Spring MVC는 웹 애플리케이션을 쉽게 만들 수 있는 다양한 어노테이션을 제공하는 프레임워크이다. 이 중 @RequestParam과 @PathVariable은 URL로부터 파라미터를 추출하는 데 사용된다. 이 글에서는 이 두 어노테이션의 차이점과 사용법을 자세히 살펴보겠다. @RequestParam@RequestParam 어노테이션은 HTTP 요청의 파라미터를 메서드의 파라미터로 바인딩하는 데 사용된다. GET 요청이나 POST 요청에서 쿼리 스트링 또는 폼 데이터를 쉽게 처리할 수 있다. 예제 1: 기본 사용법import org.springframework.stereotype.Controller;import org.springframework.ui.Model;import org.springfram..
2024.05.23 -
@GetMapping, @PostMapping, @PutMapping, @DeleteMapping
@GetMapping@GetMapping은 HTTP GET 요청을 처리하는 메서드에 사용된다. 주로 리소스를 읽어오거나 조회할 때 사용된다. Controller 코드import org.springframework.stereotype.Controller;import org.springframework.ui.Model;import org.springframework.web.bind.annotation.GetMapping;import org.springframework.web.bind.annotation.RequestParam;@Controllerpublic class ExampleController { @GetMapping("/greeting") public String greeting(@Requ..
2024.05.23 -
쿠키(Cookie)와 세션(Session)
웹 애플리케이션에서 상태를 유지하기 위한 대표적인 두 가지 방법이 쿠키(Cookie)와 세션(Session)이다. 쿠키와 세션은 사용자의 상태를 유지하고, 사용자 맞춤형 경험을 제공하는 데 중요한 역할을 한다. 이 글에서는 쿠키와 세션의 개념, 차이점, 그리고 스프링에서 이를 사용하는 방법을 예제와 함께 설명하겠다. 또한, Thymeleaf를 사용하여 데이터를 웹 페이지에 표시하는 예제도 포함한다.쿠키(Cookie)쿠키는 클라이언트 측(사용자의 웹 브라우저)에 저장되는 작은 데이터 조각이다. 서버가 클라이언트에게 전송하며, 클라이언트는 이후 요청 시 이 쿠키를 함께 전송하여 서버가 사용자를 식별할 수 있게 한다. 쿠키의 특징:클라이언트 측에 저장됨용량 제한이 있음 (대개 4KB 이하)만료 시간을 설정할 ..
2024.05.23 -
Forward와 Redirect(스프링 MVC에서의 요청 흐름 제어)
웹 애플리케이션 개발에서 클라이언트의 요청을 다른 페이지로 전달하거나 새로운 요청으로 전환하는 것은 매우 흔한 일이다. 스프링 MVC(Spring MVC)에서는 이러한 요청 흐름 제어를 위해 Forward와 Redirect 두 가지 주요 방법을 제공한다. 이 글에서는 Forward와 Redirect의 개념, 사용 예시, 차이점, 그리고 각각의 적절한 사용 사례에 대해 알아보겠다.Forward란?Forward는 서버 측에서 요청을 다른 리소스로 넘겨주는 방식이다. 클라이언트는 처음 요청한 URL이 그대로 유지되고, 서버 내부에서만 요청이 전달된다. 클라이언트는 다른 리소스로 요청이 전달되었다는 사실을 알지 못한다.사용 예시: 내부적인 페이지 이동, 데이터 처리 후 결과 페이지로 이동 등.Forward의 특..
2024.05.22