분류 전체보기

    [Spring Boot] Validation @Max 와 @Size의 차이

    1. Validation이란? Java에서 Bean Validation이라는 데이터 유효성 검사 프레임워크를 제공하여 필드에 annotation을 적용하여 제약 조건을 정의하기 위해 사용한다. Validation은 객체에 직접 정의하여 유효성 검사 로직의 문제를 해결할 수 있다. 2. Dependency 추가 implementation 'org.springframework.boot:spring-boot-starter-validation' 3. Parameter 검증하기 @Valid 애노테이션을 객체에 적용하면 유효한 객체인지 검사한다. BindingResult 객체를 통해 유효하지 않을 경우 Error를 확인할 수 있다. @Controller public class TestController { priv..

    [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 연동 오류발생

    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] JPA 조회 작업 findById(), getOne()의 차이

    [Spring Boot] JPA 조회 작업 findById(), getOne()의 차이

    JpaRepository의 구현체 TestRepository public interface MemoRepository extends JpaRepository { } findById() java,util 패키지의 Optional type으로 반환한다. (결과가 존재하는지 체크 가능) findById()는 실행하는 순간 SQL은 처리 된다. public void testSelect() { Long mno = 10L; Optional result = memoRepository.findById(mno); System.out.println("************"); if (result.isPresent()) { Memo memo = result.get(); System.out.println(memo); } }..

    [자바 알고리즘 문제풀이] String 09. 숫자만 추출

    String(스트링) 09. 숫자만 추출 * 사용 언어 : JAVA * Inflearn의 자바(Java)알고리즘 문제풀이 : 코딩테스트 대비 강의내용 정리 1. 문제 문자와 숫자가 섞여있는 문자열 중 숫자만 추출하여 주어진 순서대로 자연수를 출력 “tge0a1h205er”가 주어지면 숫자만 추출된이것의 자연수는 1205 // 입력 g0en2T0s8eSoft // 출력 208 2. 풀이 (1) 아스키코드 answer은 int type으로 값을 누적시킨다. 아스키 코드 문자 '0'이 48이고, 문자 '9'가 57이다. 입력받은 문자열을 char 배열로 변환 후 for문을 돌려 char가 48 ~ 57 사이의 값일 경우에만 값이 누적되면서 한 자리씩 이동하기 때문에 answer * 10을 하고 char - 4..