목록전체 글 (62)
상똥이의 Back-End 공부방
목차 1. Entity 구성 2. Entity 기본 기능 구현 3. 동일성 검사 [1. Entity 구성] 1. JPA 연동 - 자동화를 위해 JPA를 연동해야한다. 한다 (1) board_practice 패키지 안에 config 패키지를 만든다 (2) config 패키지 안에 클래스 JpaConfig를 만든다 (3) Jpa를 활성화하기 위해 이름 또는 타입을 기반으로 필요한 빈을 찾아 자동으로 반환 하는 @EnableJpaAuditing을 클래스 전체에 삽입한다. 엔티티가 데이터베이스에 저장되거나 업데이트될 때 생성 시간과 수정 시간을 자동으로 입력시켜준다. (4) AutoAwared를 사용해 엔터티의 생성자와 수정자를 자동으로 가져와야 하는데 이 메서드는 @Bean을 사용해야 한다. (5) 지정된 클..
목차 0. MySQL Community가 설치되어있어야 한다 1. 프로젝트에 DataSource를 추가 2. 프로젝트용 데이터베이스를 생성 3. properties 작성하기 [1. 프로젝트에 Data source 추가하기] 1. intelliJ화면 왼쪽 위 view → Tool windows → Database → +(New) → MySQL 2. Data source properties 설정 (1) Name : @localhost (2) Coment : local db (3) Host : localHost (4) Port : 3306 (5) Password : MySQL설치시 지정한 비밀번호 입력, 없다면 상태로 두기 (6) User : root 3. 아래 Test Connection을 클릭해 연결되는지..
목차 1. ERD 작성 2. 자바 클래스에 도메인 표현 [1. ERD작성] 1. 테이블을 Article(게시글), ArticleComment(댓글) 두 가지로 생성한다 - 게시글 테이블의 pk는 작성자 id로 설정한다 - 게시글에는 제목, 내용, 해시태그 등의 속성이 필요하다 - 게시글에는 생성일시, 생성자, 수정일시, 수정자 등의 메타데이터가 필요하다 - 댓글 테이블의 pk는 작성자 id로 설정하고 fk는 게시글 작성자 id로 설정한다 - 댓글에는 내용 등의 속성이 필요하다 - 댓글에는 생성일시, 생성자, 수정일시, 수정자 등의 메타데이터가 필요하다 2. ERD 작성 (1) draw.io (diagrams.net) 에 들어가서 새 다이어그램 만들기 클릭 (2) ER다이어그램 선택 후 생성 (3) 파일 ..
목차 1. 간단한 계획 설명 2. 사용할 기능 (dependency) 준비 3. usecase 작성 4. api 설계 [1. 간단한 계획 설명] - IntelliJ Ultimate과 Spring Boot 그리고 MySQL을 사용해 게시판을 제작할 것이다 - 로그인 기능, 게시글 작성 및 수정 기능, 댓글 작성 및 수정 기능, 게시글 검색 기능, 해시태그 기능을 구현할 것이다 [2. 사용할 기능(dependency) 준비] 1. Spring Initializr에 들어가 프로젝트를 생성한다 - Project : Gradle-Groovy - Language : Java - Spring Boot : 3.1.3 - Java : 17 2. 사용할 기능들을 추가한다 (1) Web 관련 dependencies - Sp..
목차 0. 프로젝트 간단 설명 1. 프로젝트를 업로드할 Git 세팅 2. kanban board를 활용한 업무 일정 관리 3. Repository와 project board 연동 [0. 프로젝트 간단 설명] - 자바, 인텔리제이, 마이에스큐엘, 스프링 부트로 게시판을 제작한다 - 깃에 업로드하며 만드는 과정을 깃허브의 칸반보드로 관리한다 [1. 프로젝트를 업로드할 Git 세팅] 1. Git에 가입되어있어야 한다 2. Repository 세팅 (1) Git 화면에서 Repositories로 들어가 오른쪽 상단의 new 를 눌러 새로운 Repository를 추가한다 (2) 이름은 Board-practice로 설정 후, public으로 생성한다 (3) README 파일도 추가해준다 (내용도 알아서 편집하기) ..
해결법 1. cmd 또는 터미널을 실행한다 2. 사용중인 네트워크 주소 조회 - window 환경 : netstat -ano 를 입력한다 - mac 환경 : lsof -i tcp:사용하고자하는 주소 를 입력한다 3. 연결된 프로토콜 목록이 뜨면 로컬주소에서 사용하려는 주소를 찾는다 (난 8080을 사용중이었으므로 8080을 찾아야했음) - window - mac (이때는 80 쓰는중이었음) 4. 옆의 PID 값을 확인한다 5. 네트워크를 중단시키기 - window 환경 : cmd에 taskkill /f /pid (pid값) 를 입력한다 - mac 환경 : sudo kill -9 pid값 을 입력후 비밀번호를 입력한다 6. 프로그램 재실행 tomcat Address already in use : bind ..
Caused by: org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Tomcat].StandardHost[localhost].StandardContext[]] 라는 오류가 떴다 File -> Settings -> Build, Execution, Deployment -> Gradle에서 Build and run using을 intellij로 바꿔준다 이후 다시 실행하면 성공 너무 간단하긴 한데 오류 검색해보면 이클립스밖에 안떠서 기록해본다,,,,☆★
1. Reflection - 컴파일 시점이 아닌 런타임 시점에 동적으로 특정 클래스의 정보를 추출해낼 수 있는 프로그래밍 기법 - 힙 영역에 로드되어 있는 클래스 타입의 객체를 통해 필드/메소드/생성자를 접근 제어자와 상관없이 사용할 수 있도록 지원하는 API - 힙 영역에 로드되어 있는 클래스 타입의 객체를 가져오는 방법 : (1) 클래스.클래스 (2) ㅇ인스턴스.겟클래스 (3) 클래스.폴네임 - 주로 프레임워크 또는 라이브러리 개발 시 사용됨 - jvm의 클래스 로더는 클래스 파일에 대한 로딩이 끝나면 클래스 타입의 객체를 생성해 메모리 힙 영역에 저장 2. Reflection 사용하는 프레임워크/라이브러리 소개 - Spring 프레임워크(Ex. DI) - Test 프레임워크 (Ex. JUnit) -..