
목록📖 🧺 일상다반사/TIL (4)
즐겁게, 코드

1. 디펜던시 오류 디버깅TL;DR : JPA가 jakarta.persistence와 javax.persistence 두 버전으로 분화되어 있다.둘을 혼용하지 않고 jakarta.persistence로 통일해 문제를 해결할 수 있었다. org.springframework.boot spring-boot-starter-data-jpa이놈이 없으면 에러는 발생하지 않으나, H2 DB에 접근하지 못하는 문제가 있다.하지만 위 의존성을 추가하면 H2 Console이 제대로 잡히기는 하나, Class org.springframework.orm.jpa.vendor.SpringHibernateJpaPersistenceProvider does not implement the requested interface jakar..

1. MySQL 접속하기 mySQL을 실행하려 할 때 이런 오류가 뜰 때가 있는데, 이는 권한과 관련된 오류로 'using password' 를 봐주면 된다. NO : 비밀번호를 입력하지 않아 생긴 문제 YES : 비밀번호가 일치하지 않아 생긴 문제 비밀번호를 사용해 mySQL에 접속할 때는 -p 플래그를 사용해주면 된다. # 패스워드를 사용한다 mysql -p # 특정 유저로 로그인하면서 패스워드를 사용한다 mysql -u [유저네임] 2. DBeaver SQL에 익숙하지 않은 사람들을 위해 DBeaver GUI 툴을 사용할 수도 있다. 데이터베이스 / 테이블 / 칼럼 생성을 GUI에서 수행할 수 있다. 3. DTO와 엔티티의 차이 DTO와 엔티티는 데이터 구조를 나타내는 역할인데, 엄밀한 차이가 무엇..

1. mysql-connector-java 스프링 어플리케이션을 MySQL과 연결하기 위해 아래처럼 pom.xml에 의존성을 작성했는데 오류를 겪었다. com.mysql mysql-connector-java runtime 무엇이 문제였고 하니, 대략 스프링 3부터는 mysql-connector-j 라는 의존성을 사용해줘야 함을 알 수 있었다. 2. DTO 작성하기 FE에서 타입스크립트로 객체를 구조화하는 것처럼 스프링에서도 DTO를 작성해 사용한다. package com.example.dto; public class TodoDTO { private Long id; private String title; private String description; private boolean completed; //..

BE 1. 스프링 실행 포트 수정하기 스프링은 기본적으로 8080 포트에서 실행된다. 수정을 위해서는 application.properties 파일에 다음 설정을 추가한다. // src/main/resources/application.properties server.port=8081 2. 화이트리스트 페이지 대체하기 기본적으로 보여줄 페이지가 없다면 에러 페이지를 보여주게 된다. /resources/static 폴더에 정적 HTML을 추가해 대체 페이지를 추가할 수 있다. 3. 라우트 설정하기 특정 경로와 페이지를 매핑하고 싶다면 다음과 같이 작성해 활용한다. @Controller public class TodoController { @GetMapping("/todo") public String todo..