본문 바로가기

전체 글

(211)
Spring Boot_암호화 처리 Hash 기술을 이용한 암호화 처리 1. security에서 제공하는 암호화 클래스 사용 2. 회원가입 시 회원 비밀번호 암호화 처리 3. 로그인 시 암호화 된 비번 확인 기능 추가 및 수정 암호화 의존성 추가 implementation 'org.springframework.security:spring-security-crypto' MySQL 오류 확인 - ControllerAdvice 확인 DataIntergrityViolationException → 잘못된 데이터가 바인딩 되었을 때 발생하는 에러 암호화 테스트 HTML 삽입 미리보기할 수 없는 소스 WebMvcConfig 기능 추가 HTML 삽입 미리보기할 수 없는 소스 UserService 암호화 기능 추가 HTML 삽입 미리보기할 수 없는 소스 ..
Spring Boot_마이그레이션(migration) H2 데이터베이스 → MySQL 데이터베이스 마이그레이션이란 ? : 데이터베이스 스키마의 변경 내역을 버전 관리하여, 변경에 대한 이력을 남기고, 데이터베이스를 이전 버전에서 최신 버전으로 옮기는 일련의 과정들을 의미한다. ( MySQL 데이터베이스를 사용한 것이 아닌 H2 데이터베이스를 사용했었음. ) → H2는 내부 DB(인메모리)로써 서버를 재시작하면 휘발성이기 때문에 DB서버가 꺼지면 모든 데이터가 유실된다. 하지만 MySQL 데이터베이스를 사용하면 서버가 꺼지더라도 데이터가 유실되지 않고 남아있다. 즉, 일반적으로 마이그레이션은 스키마를 변경하거나 새로운 테이블이나 컬럼을 추가하는 등의 작업을 포함하고 따라서 우리가 할 작업 H2 데이터베이스에서 MySQL로 변경할 때도 마이그레이션을 수행한다고 할 수 있다. 이러한 경우 데이터 스키마를 ..
Spring Boot_Gradle import 오류 java파일 안 땡겨와질 때 settings.gradle파일의 rootProject.name과 프로젝트 이름을 맞춰주고 마우스 우클릭 gradle refresh 하시면 됩니다 !!!!!
Spring Boot_Parameter '' not found. Available parameters are [arg1, arg0, param1 매개변수 갯수가 2개 이상이면 반드시 @Param을 사용해 파라미터 이름을 명시해줘야 한다 !!!!!!!
Spring Boot_Binding Exception BindingExceptionorg.apache.ibatis.binding.BindingException Invalid bound statement (not found): com.tenco.bank.repository.interfaces.HistoryRepository.insert xml 파일 매핑 오류 repoistory → repository
Spring Boot_예외 처리 기술 (Exception) 예외 처리 기술 (Exception) Exception 처리 @ControllerAdvice Global 예외처리 및 특정 package / Controller 예외처리 @ExceptionHandler 특정 Controller의 예외처리 응답으로 객체를 리턴해줘야 하기 때문에 @RestControllerAdvice를 예외처리 클래스에 꼭 적어줘야 한다. 사용자 지정 예외 처리 예제 CustomRestfullException.java HTML 삽입 미리보기할 수 없는 소스 → 유효성 검사를 할 때 예외를 던져주어 : throw new CustomRestfullException(message, status); 사용할 수 있다. MyRestfullExceptionHandler.java HTML 삽입 미리보기할..
Spring Boot_MyBatis 설정 MyBatis란 ? : 자바 객체와 SQL문 사이의 자동 매핑을 지원하는 매퍼 프레임 워크이다. MyBatis에서는 SQL 쿼리를 작성할 때 XML 또는 어노테이션을 이용해서 작업할 수 있다. 이를 통해 쿼리 구문을 작성하고 데이터 베이스와 통신을 수행할 수 있다. MyBatis는 매우 유연한 구조를 가지고 있어 SQL 쿼리와 자바 객체의 매핑 규칙을 세부적으로 지정할 수 있으며 동적 SQL 쿼리 구분을 작성할 수 있게 지원한다. 1. yml 파일에 MyBatis 설정하기 mybatis: mapper-locations: - classpath:mapper/**.xml configuration: map-underscore-to-camel-case: true 2. 의존 주입할 인터페이스에 @Mapper 어노테..
Spring Boot_H2 DB 초기 설정 H2 메모리 DB 초기 테이블 설정 및 초기 데이터 셋팅 1. 이클립스 마켓 플레이스 > sql 검색 > sql editor 1.4.0 설치 2. yml 파일 확인 및 추가 설정 yml 파일에 아래 코드 추가 sql: init: schema-locations: - classpath:db/table.sql data-locations: - classpath:db/data.sql 전체 코드 server: port: 8080 servlet: encoding: charset: utf-8 force: true spring: mvc: view: prefix: /WEB-INF/view/ suffix: .jsp datasource: url: jdbc:h2:mem:testdb;MODE=MySQL driver-class-n..