전체 글
Validation
백기선님 강의중 @Valid 어노테이션을 사용하셔서 알아보게 되었다. Validation이란 데이터가 유효한 값인지, 타당한 값인지 확인하는 것을 의미한다. 예를 들어 전화 번호 양식이 010-xxxx-xxxx인데 숫자값 이외의 값을 넣었거나 패턴을 벗어났을 경우 이메일 주소 양식이 abcde@google.com인데 주어진 패턴을 벗어나서 이메일 양식과 일치하지 않는다면 유효하지 않은 이메일 이므로 회원가입을 차단한다. 자바스크립트로 유효성 검사를 해도 UX측면에서 사용자에게 편의성을 제공하기 위함이지 보안성 측면에서는 부족하다. 서버에 오기전에 프론트에서 걸러주면 serverResource를 절약 할 수 있고, 사용자에게 조금 더 빠르게 FailFast가 가능하다. 뒤늦게 가서 공항 가서 여권찾는거 보..
5. 회원가입 뷰
출처 : www.inflearn.com/course/%EC%8A%A4%ED%94%84%EB%A7%81-JPA-%EC%9B%B9%EC%95%B1/dashboard 스프링과 JPA 기반 웹 애플리케이션 개발 - 인프런 이 강좌에서 여러분은 실제로 운영 중인 서비스를 스프링, JPA 그리고 타임리프를 비롯한 여러 자바 기반의 여러 오픈 소스 기술을 사용하여 웹 애플리케이션을 개발하는 과정을 학습할 수 있습 www.inflearn.com 부트스트랩 네비게이션 바 만들기 폼 만들기 타임리프 SignUpForm 타입 객체를 폼 객체로 설정하기 웹(HTML, CSS, JavaScript) 제약 검증 기능 사용하기 닉네임 (3~20자, 필수 입력) 이메일 (이메일 형식, 필수 입력) 패스워드 (8~50자, 필수 입력)..
4. 회원가입 컨트롤러
출처 : www.inflearn.com/course/%EC%8A%A4%ED%94%84%EB%A7%81-JPA-%EC%9B%B9%EC%95%B1/dashboard 스프링과 JPA 기반 웹 애플리케이션 개발 - 인프런 이 강좌에서 여러분은 실제로 운영 중인 서비스를 스프링, JPA 그리고 타임리프를 비롯한 여러 자바 기반의 여러 오픈 소스 기술을 사용하여 웹 애플리케이션을 개발하는 과정을 학습할 수 있습 www.inflearn.com 목표 Get "/sign-up" 요청을 받아서 account/sign-up.html 페이지를 보여준다. 회원 가입 폼에서 입력 받을 수 있는 정보를 "닉네임", "이메일", "패스워드" 폼 객체로 제공한다. model 객체에 닉네임 이메일 패스워드 객체를 생성 account p..
3. 계정 도메인
출처 : www.inflearn.com/course/%EC%8A%A4%ED%94%84%EB%A7%81-JPA-%EC%9B%B9%EC%95%B1/dashboard 3. Account 도메인 클래스 Account 도메인에 필요한 데이터 로그인 프로필 알림 설정 Lombok 어노테이션 @Getter @Setter @EqualsAndHashCode(of = "id") @Builder @AllArgsConstructor @NoArgsConstructor id만 사용하는 이유 => 연관관계가 복잡해질때 @EqualsAndHashCode(of = "id")에서 서로다른 연관관계를 계속해서 순환참조하느라 무한 루프 -> StackOverFlow가 발생할 수 있다. package com.studyolle.domain; ..
3주차 과제 : (optional) Java 13. switch 연산자
(optional) Java 13. switch 연산자 기존 자바에도 switch 문은 존재했다. public enum Day { SUNDAY, MONDAY, TUESDAY, WEDNESDAY, THURSDAY, FRIDAY, SATURDAY; } // ... int numLetters = 0; Day day = Day.WEDNESDAY; switch (day) { case MONDAY: case FRIDAY: case SUNDAY: numLetters = 6; break; case TUESDAY: numLetters = 7; break; case THURSDAY: case SATURDAY: numLetters = 8; break; case WEDNESDAY: numLetters = 9; break; d..
3주차 과제 : 연산자 우선순위
연산자 우선순위 연산자 연산 방향 높음 증감( ++,-- ), 부호( +,- ), 비트( ~ ), 논리( ! ) ↕ 쉬프트( , >>> ) -> 비교( , =, instanceof ) -> 비교( ==, != ) -> 논리( & ) -> 논리( ^ ) -> 논리( | ) -> 논리( && ) -> 논리( || ) -> 조건( ?: ) -> 낮음 대입( =, +=, -=, /=, %=, &=, ^=, |=, =, >>>= ) ) 4. 복잡한 연산식에는 괄호()를 사용해서 우선순위를 정해준다.