TIL71 2024.05.28 67일차 SPRING & 비동기 async, await async & await 🔗두 키워드를 사용하면 비동기 코드를 마치 동기 코드처럼 읽고 작성할 수 있음 async 키워드async는 function 앞에 위치 function 앞에 async를 붙이면 해당 함수는 항상 프라미스를 반환 프라미스가 아닌 것은 프라미스로 감싸 반환 async를 선언해야 await 키워드를 사용 가능 await 키워드 await는 async 함수 안에서만 동작 (async 함수 안에서 사용하지 않으면 에러 발생) 프라미스가 처리될 때까지 기다린 후 반환 promise.then보다 좀 더 세련되게 프라미스의 result 값을 얻을 수 있도록 해주는 문법 ** await는 최상위 레벨 코드에서 작동하지 않음 = async 함수 안에서만 동작 → async 함수로 감싸.. 2024. 5. 28. 2024.05.27 66일차 SPRING Validation, AJAX, fetch API 1 SPRING Validation 모듈설치- build.gradle dependecies에 추가implementation 'org.springframework.boot:spring-boot-starter-validation' 설치 확인- 외부라이브러리 / jakarta.validation, spring-boot-starter-validation 사용- 주로 RequestDTO에서 검증- 컨트롤러 중 RequestDTO 파라미터로 사용하는 메서드에서 검증 결과 처리@NotNull : null 만 허용 안됨@NotEmpty : null 은 되는데 빈문자는 안됨@NotBlank : null 도 안되고 빈문자도 안됨public class ReplyPostDto { @NotBlank private S.. 2024. 5. 27. 2024.05.22 63일차 SPRING 페이징 & 검색 1 Paging 페이지 처리 1. SQL 데이터 조회Mapper xml 파일에 가져오려고 하는 페이지에 대해 #{} 문법을 적용 ...LIMIT 시작인덱스, 개수 ** 시작인덱스는 0번 부터 시작, 조회결과의 첫 행부터 (정렬 주의!) ** 개수는 한 페이지에 몇 개의 데이터를 보여줄지에 대한 숫자를 입력 select * from tbl_board ORDER BY board_no DESC LIMIT 0, 6 -------------------------- select * from tbl_board ORDER BY board_no DESC LIMIT #{pageStart}, #{amou.. 2024. 5. 22. 2024.05.21 62일차 SPRING MyBatis MyBatis 오픈소스 ORM(Object Relational Mapping) 프레임워크xml 파일에 sql을 작성하여 데이터베이스와 상호작용기존의 repository 구현 클래스를 대체인터페이스 계층 구현을 xml이나 어노테이션으로 교체 JDBCMyBatis1. 직접 Connection 생성2. 직접 close() 처리3. 직접 PreparedStatement 생성4. Pstmt의 setXXX() 직접 처리5. Select의 경우 ResultSet을 직접 처리1. 자동 Connection 생성2. 자동 close() 처리3. 자동 PreparedStatement 생성4. ? 자리에 #{name}으로 처리5. resultType 속성으로 ResultSet 자동 처리 ** ORM 어.. 2024. 5. 21. 이전 1 2 3 4 5 6 ··· 18 다음