목록자바 (5)
tioon's Devlog
엔티티란? -데이터베이스 테이블과 직접 매핑되는 JAVA 객체를 나타냅니다. 엔터티를 사용해 데이터베이스 테이블의 레코드를 객체 지향적으로 표현할 수 있게 됩니다.엔티티는 주로 애노테이션으로 구성이 됩니다. 엔티티 특징 테이블 매핑 -엔티티는 데이터베이스 테이블에 직접 매핑이 되며, 한 엔티티 클래스는 하나의 테이블에 매핑이 됩니다. 식별자 -모든 엔티티는 유일한 식별자를 가져야하며, 이는 데이터베이스 테이블의 기본 키(Primary key)에 매핑됩니다. 상태관리 -JPA는 엔티티의 상태를 관리하는데, New , Persistent , Detached , Removed 총 4개의 상태가 있습니다. 관계 매핑 -객체 지향적인 엔티티 간의 일대다, 다대다, 일대일 관계를 애노테이션으로 구현하여, 객체 지향..
JPA(Java Persistence API) - JAVA언어를 위한 ORM 기술입니다. ORM을 활용하여 데이터베이스의 데이터를 객체로 매핑하고, 객체를 데이터베이스에 데이터베이스에 저장하고 검색하기 위한 기능을 제공합니다. 이는 개발자가 직접 SQL쿼리를 작성하지 않아도 데이터 베이스와 상호작용할 수 있또록 하며, 객체지향 프로그래밍을 더 잘 지킬 수 있게 합니다.JPA는 내부적으로 JDBC가 구현되어있어 개발자가 따로 SQL문을 입력하지않아도, JPA가 자동으로 JDBC를 이용해 데이터베이스와 통신합니다. ORM(Object-Relational Mapping) -객체지향 프로그래밍과 관계형 데이터베이스 간의 데이터를 자동으로 매핑하는 기술입니다.객체와 관계형 데이터베이스 의 테이블과 매핑작업을 자동..
DI(Dependency Injection)이란?-스프링에서 객체 간의 의존성을 관리하는 방법, 객체가 필요로하는 타 객체를 직접 생성하지않고, 외부에서 주입받는 방식으로 동작합니다. 이를 통해 객체 간의 결합도를 낮추고 유연하고 확장 가능한 코드를 작성할 수 있습니다. 쉽게말해서, 한 객체내에서 각자 코드구현에 필요한 타 객체가 있을겁니다. 여기서 필요한 객체를 내부 코드에서 직접 생성하게 되면 결합도가 높아져 나중에 코드변경이 있을때, 복잡해 집니다. 따라서, 내부에서 직접 생성하는 것이아닌 외부에서 주입받는 방식으로, 결합도를 낮춰 유지보수를 쉽게할 수 있게 만드는법을 말합니다. DI가 필요한 이유public interface Recipe{ } public class Ramen implements ..
스프링(Spring)이란? -Java의 웹 프레임워크로 Java 언어를 기반으로 사용한다. 즉, 쉽게 말하면 java로 다양한 어플리케이션을 만들기 위한 프로그래밍 설계도,틀이라고 할 수 있습니다. 중복코드의 사용률을 줄여주고, 비즈니스 로직을 더 간단하게 해줍니다.경량 컨테이너와 다양한 모듈로 구성되어 있어 다양한 어플리케이션에 확장가능한 구조를가지고 있습니다. 또한 오픈소스를 기반으로 사용하여 한마디로 말하면 Java로 다양한 프로그램을 더 쉽게 만들수 있게 해주는 오픈소스 프레임워크입니다 스프링의 특징 경량 컨테이너 -개발자가 직접 해야했던 자바 객체의 생명주기(lifecycle) 관리를 자동으로 처리해주는 컨테이너, 여기서, 스프링 컨테이너에 의해 관리되는 자바 객체를 빈(Bean)이라고 부른다...
예외처리란? -프로그램에서 발생할 수 있는 예기치 않은 상황을 처리하는 방법, 흔히말하는 예외는 일반적으로 프로그램 실행 중에 발생할 수 있는 오류나 예기치않은 상황을 나타냅니다. 예외 클래스의 계층구조 예외 클래스는 계층 구조를 가지고 있으며, 가장 상위는 Throwable 그 하위에는 두개의 서브클래스인 Error 클래스와 Exception 클래스가 있습니다. Exception - 일반적인 예외를 처리하기 위해 사용되는 클래스로, 프로그램 실행중에 예상할 수 있는 예외들을 가지고 있습니다. 크게 두가지로 나뉘는데 하나는 RuntimeException, 나머지는 CheckedException으로 나뉘어 구분됩니다. 전자는 개발자의 코드에 의해 발생할 수 있는 예외이며 개발자가 꼭 명시적으로 구현할 필요..