DTO(Data Transfer Object) - 데이터 전송 객체 비지니스 계층과 프레젠테이션 계층간 데이터 교환을 하기 위해 사용하는 객체이다. 비지니스 계층 : 데이터베이스나 외부 시스템과 상호 작용하여 데이터를 검색하거나 수정하는 작업 수행 프레젠테이션 계층 : 웹 클라이언트의 요청 및 응답 처리 DTO는 Domain model의 복사본으로, 다양한 표현 계층의 Logic(표현 방식)을 추가하여 사용된다. 더 자세한 내용은 ⬇️ https://shout-to-my-mae.tistory.com/303 DAO vs DTO vs VO DAO(Data Access Object) 데이터베이스의 data에 접근하여 CRUD 기능을 수행하는 객체 DB와 연결할 Connection까지 설정되어 제공되는 경우(e..
DAO(Data Access Object) 데이터베이스의 data에 접근하여 CRUD 기능을 수행하는 객체 DB와 연결할 Connection까지 설정되어 제공되는 경우(ex) MyBatis) 는 필요 없다. 서비스와 DB를 연결하는 Repostitory package가 DAO의 예시이다. DTO(Data Transfer Object) - 데이터 전송 객체 비지니스 계층과 프레젠테이션 계층간 데이터 교환을 하기 위해 사용하는 객체이다. 비지니스 계층 : 데이터베이스나 외부 시스템과 상호 작용하여 데이터를 검색하거나 수정하는 작업 수행 프레젠테이션 계층 : 웹 클라이언트의 요청 및 응답 처리 DTO는 Domain model의 복사본으로, 다양한 표현 계층 Logic을 추가하여 사용된다. (Model은 Per..
DTO DTO 정리본 ⬇️ https://shout-to-my-mae.tistory.com/313 DTO 생성 방법 DTO(Data Transfer Object) - 데이터 전송 객체 비지니스 계층과 프레젠테이션 계층간 데이터 교환을 하기 위해 사용하는 객체이다. 비지니스 계층 : 데이터베이스나 외부 시스템과 상호 작용하여 데이 shout-to-my-mae.tistory.com 스트림 초기 데이터 : [농어, 농어, 광어, 광어, 연어] 1. stream : 타입 제거 - 농어, 농어, 광어, 광어, 연어 2. filtering & 가공 : 원하는 것만 걸러내고 처리 filter : 걸러내기 - 농어, 농어 map : 가공하기 - 농어회뜨기, 농어 회뜨기, 광어 회뜨기, 광어 회뜨기, 연어 회뜨기 3. ..
스프링 시큐리티 테스트 로그인 테스트 코드 @Transactional //테스트 후 rollback @AutoConfigureMockMvc @SpringBootTest(webEnvironment = SpringBootTest.WebEnvironment.MOCK) class UserRestControllerTest { @Autowired private MockMvc mvc; @Autowired private UserJPARepository userJPARepository; @Autowired PasswordEncoder passwordEncoder; @Autowired private WebApplicationContext context; //Spring Security 테스트 환경 구성 @BeforeEac..
PRIMARY KEY(기본키) 튜플을 유일하게 식별하기 위해 사용되는 속성들의 부분집합(후보키) 중 선정된 key이다. 즉 테이블 튜플(행)들의 식별자이다. 기본키 설정시 NOT NULL과 UNIQUE 제약조건을 갖는다. NOT NULL을 기본적으로 갖지만 명시적으로 알려주기 위해 기본키 선언시 NOT NULL 붙여주기 FOREIGN KEY(외래키) 다른 테이블의 기본키를 참조하는 속성 또는 속성들의 집합이다. + 다른 테이블의 UNIQUE 제약조건을 갖는 속성 외래키로 참조가 가능하다. A가 B를 참조한다고할때, A는 자식테이블, B는 부모테이블이다. 테이블간 연관관계를 설정하며 무결성을 보장한다. DEFAULT NULL 설정하기 외래키 vs 인덱스 외래키는 참조시 무결성을 보장하지만 데이터 추가/삭..
2주차 카카오 테크 캠퍼스 2단계 - BE - 2주차 클론 과제 과제명 1. 전체 API 주소 설계 2. Mock API Controller 구현 과제 설명 1. API주소를 설계하여 README에 내용을 작성하시오. 2. 가짜 데이터를 설계하여 응답하는 스프링부트 컨트롤러를 작성하고 소스코드를 업로드하시오. 과제 상세 : 수강생들이 과제를 진행할 때, 유념해야할 것 아래 항목은 반드시 포함하여 과제 수행해주세요! 전체 API 주소 설계가 RestAPI 맞게 설계되었는가? (예를 들어 배포된 서버는 POST와 GET으로만 구현되었는데, 학생들은 PUT과 DELETE도 배울 예정이라 이부분이 반영되었고, 주소가 RestAPI에 맞게 설계되었는지) 가짜 데이터를 설계하여 Mock API를 잘 구현하였는가? ..