반응형 개발139 객체와 테이블 매핑, DB 스키마 자동 생성, 필드와 컬럼 매핑 2023. 02.07 11:15 복습 시작 객체와 테이블 매핑 JPA를 사용하는 데 가장 중요한 일은 엔티티와 테이블을 정확히 매핑하는 것. 이에 대해 학습해보자. @Entity @Entity가 붙은 클래스는 JPA가 관리하며 엔티티라 한다. JPA를 사용해서 테이블과 매핑할 클래스는 @Entity가 필수이다. @Entity 적용 시 주의해야 할 점이 몇 가지 있다. 기본 생성자는 필수다. 즉, 파라미터가 없는 public or protected 생성자가 필수다. final 클래스, enum, interface, inner 클래스에서는 사용 불가하다. 저장할 필드에 final을 사용할 수 없다. @Entity에는 name이라는 속성도 있다. 이는 엔티티 이름을 지정하는데 name을 설정하지 않는다면 클래.. 개발/JPA 2022. 2. 24. 클래스, 객체 , 인스턴스 클래스란? 객체를 정의해 놓은 것. 객체의 설계도 또는 틀이다. 객체를 생성하는 데 사용하지만, 객체 그 자체는 아니다. 기능(메서드)과 속성(필드)을 가진다. 객체란? 우리가 주변에서 볼 수 있는 책상, 의자와 같은 사물과 개념, 논리 사랑 같은 무형의 개념도 객체다. 클래스의 설계 그대로 생성된 실체다. 우리가 소프트웨어에 구현할 대상이다. OOP의 관점에서 클래스의 타입으로 선언되었을 때 '객체'라고 부른다. 인스턴스란? 클래스로부터 객체를 만드는 과정을 클래스의 인스턴스화라고 한다. 어떤 클래스로부터 만들어진 객체를 그 클래스의 인스턴스라고 한다. 인스턴스란 클래스의 설계대로 메모리에 할당된 객체다. 객체를 소프트웨어에서 만들면 그것이 인스턴스다. OOP의 관점에서 객체가 메모리에 할당되어 실제 .. 개발/Java 2022. 2. 24. 변수와 리터럴 변수 변수란, 단 하나의 값을 저장할 수 있는 메모리 공간이다. 변수를 선언하면, 메모리의 빈 공간에 '변수타입'에 알맞은 크기의 저장공간이 확보되고, 앞으로 이 저장공간은 '변수이름'을 통해 활용할 수 있다. 변수를 선언하면 메모리는 여러 프로그램이 공유하는 자원이므로 다른 프로그램에 의해 저장된 알 수 없는 쓰레기 값이 남아있을 수도 있다. 그래서 변수는 사용되기 전 적절한 값으로 초기화 하는 것이 좋다. 지역변수는 사용하기 전에 초기화를 반드시 하지만 클래스 변수와 인스턴스 변수는 초기화를 생략할 수 있다. 변수를 선언할 때는 저장하려는 값의 특성을 고려하여 가장 알맞은 자료형을 변수의 타입으로 선택한다. 자료형은 크게 '기본형' 변수 8가지와 그 외 '참조형' 변수로 나눈다. 그러면 기본형과 참조.. 개발/Java 2022. 2. 24. 영속성 관리 2023. 02.07 09:30 복습 시작 JPA 기능 JPA가 제공하는 기능은 크게 두 가지가 있다. 엔티티와 테이블을 매핑하는 설계 부분 매핑한 엔티티를 실제 사용하는 부분 매핑한 엔티티를 엔티티 매니저를 통해 어떻게 사용하는지 알아보자. 먼저 엔티티 매니저란 무엇인가? 엔티티 매니저는 엔티티를 저장하고, 수정하고, 삭제하고, 조회하는 등 엔티티와 관련된 모든 일을 처리한다. 개발자의 입장에서 엔티티 매니저는 엔티티를 저장하는 가상의 데이터베이스로 생각하면 된다. 일반적으로 데이터베이스를 하나만 사용하는 애플리케이션은 일반적으로 엔티티 매니저 팩토리를 하나만 생성한다. 엔티티 매니저 팩토리를 생성하면 필요할 때마다 엔티티 매니저를 생성하면 된다. 엔티티 매니저 팩토리는 엔티티 매니저를 만드는 공장인데.. 개발/JPA 2022. 2. 23. JPA 2023. 02.07 09:00 복습 시작 JPA란 무엇인가? JPA는 자바 진영의 ORM 기술 표준이다. 그럼 ORM이란 무엇인가? ORM은 Object-Relational Mapping의 줄임말이다. 이름 그대로 객체와 관계형 데이터베이스를 매핑하는 것이다. 즉 SQL을 직접 짜지 않고 자바 코드로 편하게 객체를 ORM 프레임워크에 저장하면 데이터베이스에 저장할 수 있다. 예전에 Express와 Prisma를 다루어본 적이 있어서 쉽게 이해가 갔다. JPA에 대해 간단히 알아보았다. 그럼 더 중요한 궁금증이 남아있다. 우리는 왜 JPA, 즉 ORM을 사용할까? 웹 서비스를 운영하려면 고객 데이터도 저장하고 서비스 데이터도 저장해야 하고 또 이 데이터들을 사용해야 한다. 그러면 데이터를 저장하고 꺼내오.. 개발/JPA 2022. 2. 22. Spring MVC 2편 - 예외 처리와 오류 페이지 본 게시글은 인프런 김영한 선생님 강의 스프링 MVC 2편을 완강하고 배운 것을 남기고자 적은 포스팅입니다. 강의 링크는 아래와 같습니다. https://www.inflearn.com/course/%EC%8A%A4%ED%94%84%EB%A7%81-mvc-2/dashboard 스프링 MVC 2편 - 백엔드 웹 개발 활용 기술 - 인프런 | 강의 웹 애플리케이션 개발에 필요한 모든 웹 기술을 기초부터 이해하고, 완성할 수 있습니다. MVC 2편에서는 MVC 1편의 핵심 원리와 구조 위에 실무 웹 개발에 필요한 모든 활용 기술들을 학습할 수 있 www.inflearn.com 이제 예외 처리와 오류 페이지에 대해 알아보자. 우선 스프링이 아닌 순수 서블릿 컨테이너가 예외 처리를 하는 방법부터 알아보자. 서블릿은.. 개발/Spring MVC 2022. 2. 6. Spring MVC 2편 - 로그인 필터와 인터셉터 본 게시글은 인프런 김영한 선생님 강의 스프링 MVC 2편을 완강하고 배운 것을 남기고자 적은 포스팅입니다. 강의 링크는 아래와 같습니다. https://www.inflearn.com/course/%EC%8A%A4%ED%94%84%EB%A7%81-mvc-2/dashboard 스프링 MVC 2편 - 백엔드 웹 개발 활용 기술 - 인프런 | 강의 웹 애플리케이션 개발에 필요한 모든 웹 기술을 기초부터 이해하고, 완성할 수 있습니다. MVC 2편에서는 MVC 1편의 핵심 원리와 구조 위에 실무 웹 개발에 필요한 모든 활용 기술들을 학습할 수 있 www.inflearn.com 먼저 한 가지 예를 들어보겠다. 어떤 웹 애플리케이션에서 상품 관리 페이지는 로그인한 유저만 접속할 수 있다. 서버에게 요청을 보낸 클라.. 개발/Spring MVC 2022. 1. 24. Spring MVC 2편 - 로그인 쿠키와 세션 본 게시글은 인프런 김영한 선생님 강의 스프링 MVC 2편을 완강하고 배운 것을 남기고자 적은 포스팅입니다. 강의 링크는 아래와 같습니다. https://www.inflearn.com/course/%EC%8A%A4%ED%94%84%EB%A7%81-mvc-2/dashboard 스프링 MVC 2편 - 백엔드 웹 개발 활용 기술 - 인프런 | 강의 웹 애플리케이션 개발에 필요한 모든 웹 기술을 기초부터 이해하고, 완성할 수 있습니다. MVC 2편에서는 MVC 1편의 핵심 원리와 구조 위에 실무 웹 개발에 필요한 모든 활용 기술들을 학습할 수 있 www.inflearn.com 이제 로그인 기능에 대해 공부해보자. 먼저 로그인 기능은 어떻게 구현해야 할까? 우리가 로그인한 상태인 것을 서버가 알아야 할 것이다. .. 개발/Spring MVC 2022. 1. 24. Spring MVC 2편 - Bean Validation 본 게시글은 인프런 김영한 선생님 강의 스프링 MVC 2편을 완강하고 배운 것을 남기고자 적은 포스팅입니다. 강의 링크는 아래와 같습니다. https://www.inflearn.com/course/%EC%8A%A4%ED%94%84%EB%A7%81-mvc-2/dashboard 스프링 MVC 2편 - 백엔드 웹 개발 활용 기술 - 인프런 | 강의 웹 애플리케이션 개발에 필요한 모든 웹 기술을 기초부터 이해하고, 완성할 수 있습니다. MVC 2편에서는 MVC 1편의 핵심 원리와 구조 위에 실무 웹 개발에 필요한 모든 활용 기술들을 학습할 수 있 www.inflearn.com 저번 시간에는 Validation에 대해 공부했다. 이번에는 한 단계 나아간 Bean Validation에 대해 공부해보겠다. 먼저 저번.. 개발/Spring MVC 2022. 1. 22. Spring MVC 2편 - Validation 본 게시글은 인프런 김영한 선생님 강의 스프링 MVC 2편을 완강하고 배운 것을 남기고자 적은 포스팅입니다. 강의 링크는 아래와 같습니다. https://www.inflearn.com/course/%EC%8A%A4%ED%94%84%EB%A7%81-mvc-2/dashboard 스프링 MVC 2편 - 백엔드 웹 개발 활용 기술 - 인프런 | 강의 웹 애플리케이션 개발에 필요한 모든 웹 기술을 기초부터 이해하고, 완성할 수 있습니다. MVC 2편에서는 MVC 1편의 핵심 원리와 구조 위에 실무 웹 개발에 필요한 모든 활용 기술들을 학습할 수 있 www.inflearn.com 이제 기초 Validation, 즉 검증에 대해 알아보자. 우선 우리는 지난 시간부터 계속 Item이라는 클래스를 가지고 있었다. 아래와.. 개발/Spring MVC 2022. 1. 22. 스프링 MVC 2편 - 메시지, 국제화 본 게시글은 인프런 김영한 선생님 강의 스프링 MVC 2편을 완강하고 배운 것을 남기고자 적은 포스팅입니다. 강의 링크는 아래와 같습니다. https://www.inflearn.com/course/%EC%8A%A4%ED%94%84%EB%A7%81-mvc-2/dashboard 스프링 MVC 2편 - 백엔드 웹 개발 활용 기술 - 인프런 | 강의 웹 애플리케이션 개발에 필요한 모든 웹 기술을 기초부터 이해하고, 완성할 수 있습니다. MVC 2편에서는 MVC 1편의 핵심 원리와 구조 위에 실무 웹 개발에 필요한 모든 활용 기술들을 학습할 수 있 www.inflearn.com 메시지 예시를 들어보자. HTML 태그에서 모든 label에 있는 메시지를 변경한다고 생각해보자. 그러면 HTML 파일에 메시지가 하드 .. 개발/Spring MVC 2022. 1. 20. 스프링 MVC 2편 - Thymeleaf 스프링 통합과 폼 본 게시글은 인프런 김영한 선생님 강의 스프링 MVC 2편을 완강하고 배운 것을 남기고자 적은 포스팅입니다. 강의 링크는 아래와 같습니다. https://www.inflearn.com/course/%EC%8A%A4%ED%94%84%EB%A7%81-mvc-2/dashboard 스프링 MVC 2편 - 백엔드 웹 개발 활용 기술 - 인프런 | 강의 웹 애플리케이션 개발에 필요한 모든 웹 기술을 기초부터 이해하고, 완성할 수 있습니다. MVC 2편에서는 MVC 1편의 핵심 원리와 구조 위에 실무 웹 개발에 필요한 모든 활용 기술들을 학습할 수 있 www.inflearn.com 타임리프 스프링 통합 타임리프는 스프링 없이도 동작하지만, 스프링과 통합을 위한 다양한 기능을 편리하게 제공한다. 그리고 이런 부분은 스.. 개발/Spring MVC 2022. 1. 19. 이전 1 ··· 7 8 9 10 11 12 다음 반응형