일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
31 |
- popleft
- 완전탐색
- pypy3
- C#강의
- 연관관계
- appendleft
- BFS
- 소수찾기
- unity
- spring
- 1일1솔
- 그리디 알고리즘
- 인프런
- 합 구하기
- JPA
- 우선순위큐
- deque
- 소수판별
- Java
- 백준
- 누적합
- 브루투포스
- DP
- c#
- Python
- LCM
- mvc
- 프로그래머스
- 파이썬
- python3
- Today
- Total
목록Spring, java (34)
jae_coding

목차 주문 엔티티, 주문상품 엔티티 주문 Repository 주문 Service 주문 기능 Test 주문 검색 기능 1. 주문 엔티티, 주문상품 엔티티 Order Entity package jpabook.jpashop.domain; import lombok.AccessLevel; import lombok.Getter; import lombok.NoArgsConstructor; import lombok.Setter; import javax.persistence.*; import java.time.LocalDateTime; import java.util.ArrayList; import java.util.List; @Entity @Table(name = "orders") @Getter @Setter //생성메..

목차 상품 엔티티 비지니스로직 추가하기 상품 Repository 상품 Service 1. 상품 엔티티 비지니스 로직 추가하기 package jpabook.jpashop.domain.Item; import jpabook.jpashop.domain.Category; import jpabook.jpashop.exception.NotEnoughStockException; import lombok.Getter; import lombok.Setter; import javax.persistence.*; import java.util.ArrayList; import java.util.List; @Entity @Getter @Setter //상속관계 전략 @Inheritance(strategy = InheritanceT..

목차 회원 도메인 회원 Repository 회원 Service 회원 Service Test 회원 Service Test 검증 1. 회원 도메인 package jpabook.jpashop.domain; import lombok.Getter; import lombok.Setter; import javax.persistence.*; import java.util.ArrayList; import java.util.List; @Entity @Getter @Setter public class Member { @Id @GeneratedValue @Column(name = "member_id") private Long id; private String name; @Embedded private Address addre..

목차 계층형 아키텍쳐 개발 순서 1. 계층형 아키텍쳐 웹계층: Controller, Web 비지니스 로직, 트랜잭션 처리: Service JPA, 엔티티 매니저를 사용해서 데이터를 접근: Repository 엔티티가 모여있는 계층, 모든 계층에서 사용: Domain 2. 개발 순서 Service, Repository 개발 후 Test Case를 이용하여 검증 마지막으로 웹계층을 이용하여 적용시킨다. 회원 도메인 개발 상품 도메인 개발 주문 도메인 개발 웹 계층 개발 API 개발

목차 Setter를 가급적 사용하지 말자 즉시로딩 vs 지연로딩 컬렉션 필드는 초기화를 시켜라 테이블명, 컬럼명 규칙 1. Setter를 가급적 사용하지 말자 실무에서는 Setter를 너무 많이 사용하게되면, 변경 포인트가 너무 많기 때문에 유지 보수가 어렵다. 엔티티 수정이 어떻게 되는지 파악하기가 어렵다. (나중에 변경해어야될때, 모든 엔티티를 보면서 유지보수를 해야하기 때문에 Setter을 줄어야한다)-> Getter는 열고 Setter는 닫아야한다. 2. 즉시로딩 vs 지연로딩 즉시로딩('EAGER') 위 상황에서 member를 조회할 때, 연관된 order를 한번에 조회한다. 그리고 order를 조회할때, 필요한 것을 모두 조회한다는 것이다. 이 경우에 어떤 attribute를 조회할 때, 연관..

목차 설계 회원 엔티티 주문 엔티티 주문상태 상품주문 엔티티 상품 엔티티 상품 하위 엔티티 (BOOK, ALBUM, MOVIE) 배송 엔티티 배송상태 카테고리 엔티티 주소 테이블 생성화면 실무 개발 팁 0. 설계 Domain model & table Analysis member entity Analysis member table 1. 회원 엔티티 package jpabook.jpashop.domain; import lombok.Getter; import lombok.Setter; import javax.persistence.*; import java.util.ArrayList; import java.util.List; @Entity @Getter @Setter public class Member { @I..

목차 H2 Databae 다운로드 및 설치 DB 파일 생성하기 DB 연결 환경설정 DB 확인 및 테스트 1. H2 Database 다운로드 및 설치 h2 database 홈페이지 여기서 본인의 OS에 맞는 버전을 다운로드를 받는다. 2. DB파일 생성하기 terminal에서 h2다운로드 경로로 들어가서 h2.sh을 실행시켜준다. 초기 jpashop이라는 이름으로 db파일을 생성시켜준다. (지정된 경로에 jpashop.mv.db파일 생성완료) 그 뒤에부터 tcp소켓 통신을 이용하여 database에 접근하여 주면 끝! 접속화면 이런식으로 H2 Database환경설정은 끝입니다 ! 감사합니다. 3. DB 연결 환경설정 application.properties 파일을 지우고 본 프로젝트는 application..

목차 Thymeleaf Static Page Template Page 1. Thymeleaf 템플릿 엔진 사용 thymeleaf 공식 사이트 스프링 공식 튜토리얼 스프링부트 메뉴얼 Thymeleaf의 장점: 웹 브라우저에서 열린다. (다른 템플릿은 하지 못한다!) 2. Static Page resources > static > index.html 생성 Hello hello 실행화면 (localhost:8080) Controller를 거쳤을 때, Getmapping이 되지 않았을 때, Static의 index.html실행 3. Template Page HelloController class package jpabook.jpashop; import org.springframework.stereotype.Co..

목차 스프링 부트 스타터 Build.Gradle Preference Jpashopapplication실행 JpashopapplicationTest실행 Lombok Test 1. 스프링 부트 스타터 스프링부트 홈페이지 -. Project: Gradle -. Language: Java -. Spring Boot: 안정화된 최신버전 (저의 경우는 2.7.3) -. Group: jpabook -. Artifact: jpashop -. Dependencies: Spring Web, Thymeleaf, Spring Data JPA, H2 Database, Lombok -. Packaging: Jar -. Java: 18 Generate 후 원하시는 파일경로로 변경 후 IntelliJ에서 open > gradle 하..

Project 생성 -. Gradle 추가시키기 -. hello.html추가시키기 -. Controller를 Getmapping 이용하기 @GetMapping("/hello") -. Port번호 변경시키기 (application.properties) 저의 경우에는 8081 포트 이용 server.port=8081 -. url이동 localhost:8081/hello?name=name Build.gradle plugins { id 'org.springframework.boot' version '2.7.3' id 'io.spring.dependency-management' version '1.0.13.RELEASE' id 'java' } group = 'spring' version = '0.0.1-SNAPS..