본문 바로가기

Programing14

Spring JPA 관계 이해하기 1. JPA 란?JPA는 Java Persistence API 약자로서 , RDBMS와 OOP 객체 사이의 불일치에서 오는 패러다임을 해결하기 위해서 만들어진 ORM(Object Relational Mapping) 기술이다.구현체가 없으므로 ORM 프레임워크를 사용하는데 대중적인 프레임 워크는 Hibernate이다. JPA 에서 가장 중요한것은 객체와 데이터베이스 테이블 맵핑 방법이다.데이터베이스 간의 관계를 통해 데이터를 연결하고, 데이터를 조회할 수 있는데 JPA에서도 관계를 정의하고,객체간 연결을 할 수 있다. 따라서, JPA 를 잘 다루기 위해서는 연관관계 맵핑 방법에 대해 숙지하고, 익숙해져야 한다.2. 연관 관계 정의연관 관계를 맵핑 할 때 크게 생각해 봐야 할 것은 방향, 관계의 주인, 다중.. 2025. 2. 7.
Spring Bean 수동 등록하기 + 같은 타입의 Bean이 여러개 라면? 1.Bean 수동 등록Spring 을 사용하면 @Component를 사용하면 @ComponentScan에 의해 자동으로 스캔되어 해당 클래스를 Bean으로 등록 하여 스프링 컨테이너에서 관리된다. @Repository , @Service , @ Controller 어노테이션 으로 각각의 class의 의미를 명시해 주고 @Component 가 내장되어 있기 때문에 자동으로 Bean이 등록된다. 따라서, 비지니스 로직과 관련된 클래스들은 수가 많기 때문에 어노테이션으로 Bean 등록하고 관리하면 개발 생산성에 유리다. 그러면 왜 ... 수동 Bean을 사용할까?1.1 수동 Bean 사용 이유기술적인 문제나 공통된 관심사를 처리할 때 사용하는 객체들을 수동으로 등록하는 것이 좋다.로그처리 처럼 부가적이고 공통.. 2025. 2. 5.
Spring JPA Auditing 적용해 보기 Spring JPA Auditing 이란?JPA 로 Entity를 만들다 보면, 공통적으로 사용하는 필드들이 필요하다.각 Entity 마다 컬럼을 추가하고, 생성자에 넣어주고~~~ 이 과정들을 N번 반복해야하는데, 이를 추상화 하면 한번에 공통된 컬럼을 사용할 수 있다. 주로, 생성일, 수정일 ,작성자, 수정자 와 같은 정보는 중요하기 때문에 기록을 잘 남겨놓는것이 매우 중요하다. 따라서, JPA 에서는 Audit이라는 기능을 제공하고, Spring Data JPA에서 자동으로 값을 넣어주는 기능을 해주기 때문에 매우 간편하게 데이터를 관리 할 수 있다.MyBatis 로 작업할때는 하나하나 upadate ,insert를 해줘야 해서 매우 까다로웠음;; 1. Application.java 에 @Enable.. 2025. 2. 4.
Windows 11 에서 Docker 설치 ( DockerDesktop ) 해당 포스팅은 '그림과 실습으로 배우는 도커 & 쿠버네티스' 를 참고하였습니다. docker 설치 전 간단하게 설명하자면데이터나 프로그램을 격리시키는 기능    을 제공하는 소프트웨어이다.도커는 리눅스 기반이며, 운영체제 위에 도커엔진 -> 컨테이너가 N 개 올라가는 구조이다.컨테이너안에는 리눅스 운영체제 비스무리? 한게 들어있는데 컨테이너는 독립된 구조이기 때문에 리눅스의 핵심부인 커널 에 명령들을 전달해 줘야 하기 때문이다.도커를 사용하는 이유는 독립적인 환경을 제공하기 때문에 프로그램간의 버젼관리가 쉽고, 어느 서버든 같은 환경을 보장하기 때문에 이식성이 좋기 때문이다. 컨테이너: 가상화 하여 격리된 공간이미지 : 컨테이너의 빵판  => 컨테이너로 이미지를 만들 수 있고, 이미지로 컨테이너를 만들 .. 2025. 1. 27.
백준 10811번 : 바구니 뒤집기 (Java) 백준 10811번 바구니 뒤집기 문제 문제 이해 1. 첫번째 라인 n 은 바구니 갯수, m 은 역순 정렬 횟수2. i ~ j 까지를 역순 으로 정렬3. 바구니에 담긴 번호 출력 코드import java.io.IOException;import java.io.BufferedReader;import java.io.InputStreamReader;import java.io.BufferedWriter;import java.io.OutputStreamWriter;import java.util.StringTokenizer;public class Main { public static void main(String [] args) throws IOException { BufferedReader br = n.. 2024. 12. 10.
[ Java ] Servlet 구현하기 https://yellow-bean.tistory.com/2 [Java] 서블릿(Sevlet) 이란? 서블릿(Sevlet) 이란? Servlet 은 Java EE(Java Enterprise Edition) 사양의 일종으로 웹 어플리케이션의 일종으로 클라이언트가 요청을 하고 결과를 클라이언트에 응답하는 기술로 Java 로 구현된 프로그램 입 yellow-bean.tistory.com 이전 포스팅에서 Servlet의 개념에 대해 알아봤습니다. 오늘은 Servlet을 직접 구현 방법에 대해 알아볼게요.😊 1. Servlet 구현 과정 1️⃣ HttpServlet 클래스를 상속하여 구현하며, 어떤 요청 방식을 지원하는 Servlet인가에 따라 doGet() , doPost(), doPut(), doDelete.. 2023. 9. 2.