본문 바로가기

전체 글358

Spring 시험 (7번), Thymleaf 이용 리스트 출력 영화 테이블을 만들어라 (영화번호, 제목, 국가, 장르, 개봉일, 런닝타임) 더미 데이터의 수는 상관 없다. 이를 어떠한 방식으로든 리스트로 출력해라 ✔ 영화 테이블 생성 (Entity) - sql 을 만들지 않고 @Table 을 이용하여 컬럼(제목, 국가, 장르, 런닝타임) 선언 package com.koreait.task7.domain; import lombok.Getter; import lombok.Setter; import lombok.ToString; import net.bytebuddy.asm.Advice; import org.springframework.data.annotation.CreatedBy; import org.springframework.data.annotation.CreatedD.. 2023. 1. 9.
Spring Project Board 2 (Repository, DTO, PageController) - 타임리프 SQL 출력 MockMvc 웹 어플리케이션을 어플리케이션 서버에 배포하지 않고 테스트용 MVC 환경을 만들어 요청 및 전송, 응답기능을 제공하는 유틸리티 클래스 Query DSL - JPA를 좀 더 효율적으로 사용할 수 있는 라이브러리 - 오픈소스 프로젝트로 JPQL을 Java 코드로 작성할 수 있도록 함 - 정적 타입을 이용해서 SQL과 같은 쿼리를 생성해줌 @ConfigurationPropertiesScan - @EnableConfigurationProperties를 이용해 설정 프로퍼티 클래스를 사용하는 경우 클래스가 많아지면 코드가 무거워지고 복잡해짐 ✔ Repository @RepositoryRestResource//내가 설정한 REST 기능을 부여함(기본적인 API 자동 생성) public interfac.. 2023. 1. 8.
[Error] 포트 충돌, 중복 오류 프로젝트를 하면서 이클립스 사용에는 포트 오류가 많이 발생하였지만, Intellij 사용 간 포트 충돌이 많이 발생하지는 않았다. 가끔 충돌하는 경우가 있어 오류 해결 방법을 기록 1. 프로그램 종류 후 재 시작 2. Intellij 경우 Server: port : (포트번호) 변경하기 3. CMD 창 이용하기 - (위 방법이 적용이 안되는 경우 대부분 해결) 가. Window 키 + R -> cmd 검색 (입력 창에서 cmd 입력 해도 무방) 나. CMD 창에 -> netstat -ano 입력 -> 로컬주소와 PID 확인 다. 내가 0.0.0.0:9999(여기서 9999가 포트 번호이다) -> 제거할 번호는 PID 6904 이다 라. CMD 창에 taskkill /f /pid (pid번호) 입력 다. .. 2023. 1. 7.
Spring Project Board(게시판) 1 ✔ 게시판 프로젝트 게시판 프로젝트 개발환경 - 개발도구 : 인텔리제이 - 소스코드 관리 : Git - Git 호스팅 : GitHub - Git GUI : 깃크라켄 (https://www.gitkraken.com/) - SDK : JDK 17 목표 - 누구나 사용하기 쉽게 명확한 기능의 요구사항을 만듬 - 요규사항을 구현하는데 도움이 되는 각종 문서 작업을 경험 - 자바 + 스프링부트로 요규사항을 실제로 구현하는 기술적인 방법을 습득 - 최신 버전의 기술을 사용하면서 기술 동향을 파악하고 새로운 기술들을 익혀봄 - 기획과 문서 작성부터 개발, 형상관리, 테스트. 배포까지 개발 프로세스 전반을 경험 문서작업 https://www.diagrams.net/ (draw.io) : 도메인과 ERD 설계 구글 시트.. 2023. 1. 2.
Spring 유용한 Setting, 사이트 ✔ Intellij 유용한 세팅 - File -> Settings -> Plugin -> 검색 1. Atom Material Icons Intellij 파일을 가시성을 높여주는 Plugins 2. One Dark theme 코드의 색을 바꿔 가시성을 높여주는 기능 3. Grep Console 콘솔창 내 많은 코드가 있는 경우 콘솔창 의 가시겅을 높여주는 기능 ✔ 유용한 사이트(mookaroo) CSV, SQL, JSON, XML 등 다양한 더미 데이터를 손쉽게 만들어 주는 사이트 https://www.mockaroo.com/schemas/new Mockaroo - Random Data Generator and API Mocking Tool | JSON / CSV / SQL / Excel www.mocka.. 2022. 12. 29.
GitKraken ✔ GitKraken - Git GUI : 깃크라켄 (https://www.gitkraken.com/) CLI 방식에서 사람이 보기 간편한 GUI 방식으로 직관적이고 간편하게 사용할 수 있게 도와주는 기능을 가지고 있다. 1. GitKraken 홈페이지 -> DownLoad 클릭 2. 자동 다운로드 완료 3. 깃허브 로그인 (또는 로그인 상황) 하여 GitKraken 실행 4. New WorkSpace 클릭 -> Cloud WorkSpace 클릭(내 컴퓨터와 동기화) -> WorkSpace Name 기입 -> Select a Provider(GitHub 사용 시 GitHub.com 선택) -> Select Repository 선택(내 깃허브에서 내가 원하는 Repository선택) -> Create Cl.. 2022. 12. 22.
Spring 타임리프 이용 기본 ✔ 템플릿 엔진 템플릿 엔진 - 지정된 템플릿 양식과 데이터가 합쳐져 HTML 문서를 출력하는 소프트웨어 - 서버 템플릿 엔진 - velocity : 과거 스프링에서 많이 사용하던 엔진. 현재 권장하지 않음 - freemarker : 템플릿 엔진으로 많은 기능을 지원. Apache 템플릿 엔진으로 템플릿 및 변경 데이터를 기반으로 텍스트, 메일, 파일등을 생성하는 Java 라이브러리를 제공 - thymeleaf : 스프링 부트에서 적극 지원하고 있는 엔진. 문법이 쉽지 않음. react, vue의 경험이 있다면 최적의 템플릿 엔진 - mustaches : 문법이 다른 템플릿 엔진보다 쉽다. 비즈니스 로직을 사용할 수 없음. view의 역할과 서버의 역할이 명확하게 구분됨 타임리프(Thymeleaf) 타임.. 2022. 12. 19.
Spring Main Page Project ✔ UserApiRequest : 클라이언트가 서버쪽으로 요청할 정보를 전달해주는 부분 @NoArgsConstructor @AllArgsConstructor @Data @Builder public class UserApiRequest { //클라이언트가 서버쪽으로 요청할 정보를 전달해주는 부분 private String userid; private String name; private String userpw; private String hp; private String email; } ✔ UserApiResponse : 서버가 사용자에게 줄 수 있는 데이터들을 클래스화 import java.time.LocalDateTime; @Data @NoArgsConstructor @AllArgsConstructo.. 2022. 12. 18.
Spring Join ✔ Category Join @Entity // JPA를 사용해서 DB 테이블과 메핑할 클래스를 연결 @NoArgsConstructor // 파라미터가 없는 기본 생성자를 생성 @AllArgsConstructor //모든 필드 값을 파라미터로 받는 생성자를 만들어줌 @Data @Builder // 연속적으로 실행하게 해주는 기능 ex) method.method ...... @ToString(callSuper = true) @EqualsAndHashCode(callSuper = true) @EntityListeners(AuditingEntityListener.class) public class Category extends BaseEntity implements Auditable { // ctrl + sh.. 2022. 12. 13.