springboot
Spring Boot Jpa IllegalArgumentException 에러
1. 문제 사항 상품 클래스와 카테고리 클래스가 1:N 으로 매핑된 상태에서 Jpa의 쿼리 메서드를 이용해 상품 클래스를 카테 고리별로 조회를 시도하던 도중 아래의 에러가 발생했다. java.lang.IllegalArgumentException: Parameter value [1] did not match expected type .... 2. 원인 상품 클래스에서 지정된 카테고리의 타입과 다른 타입으로 조회를 시도하여 객체 타입이 바인딩이 되지 않아 발생되었다. ItemEntity.class ... @ManyToOne @JoinColumn(name = "category_id") private Category category; ... itemRepository.class List findAllByCate..
[Spring boot] 배포 패키징 jar 에서 war로 변경
JSP 템플릿을 사용하여 화면 구성을 하기 위해 기존의 jar 프로젝트에서 war 프로젝트로 변경해보자. 먼저 간단하게 jar와 war의 차이점을 알아보자. 해당 프로젝트는 Gradle 기준으로 변경하였다. Jar란? 여러개의 자바 클래스 파일과, 클래스들이 이용하는 관련 리소스 및 메타데이터를 하나의 파일로 모아서 자바 플랫폼에 응용 소프트웨어나 라이브러리를 배포하기 위한 소프트웨어 패키지 파일 포맷이다. JRE(JAVA Runtime Environment)만 있어도 실행 가능하다. war란? 웹 애플리케이션을 구성하는 자바 클래스, 자바 서버 페이지, 관련 XML 파일 등을 묶은 압축 파일 포맷이다. 원하는 구성을 할 수 있는 Jar와 달리 War는 WEB-INF 및 META-INF 디렉토리로 사전 ..
Spring boot와 h2 Database 연동 오류발생
1. 문제 사항 Embedded H2 DataBase를 웹으로 연결하니 localhost가 거부했다는 페이지가 떴다. DB 설정 application.yml spring: datasource: driver-class-name: org.h2.Driver url: jdbc:h2:mem:testdb username: sa password: jpa: hibernate: ddl-auto: create show-sql: true properties: hibernate: dialect: org.hibernate.dialect.H2Dialect h2: console: enabled: true path: /h2-console settings: web-allow-others: true 2. 원인 Spring Boot Pr..
[Spring Boot] PasswordEncoder.mathes() 암호화된 패스워드 비교
평문 패스워드를 암호화 해주기 위해서 PasswordEncoder의 encoder()를 사용한다. passwordEncoder.encode("passowrd"); 테스트 코드 작성 시 평문 패스워드와 암호화된 패스워드를 비교하기 위해 matches() 메서드를 사용한다. userService에서 encode()를 구현해주었고 저장되어 있는 암호화된 패스워드랑 테스트를 위해 만들어준 newUser의 평문 패스워드를 비교해주기 위해 matches()를 사용했다. @Test public void givenValidId_whenSignupPost_then200() { // given UserDto newUser = new UserDto(); newUser.setUsername("user03"); newUser...