| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | 5 | 6 | 7 |
| 8 | 9 | 10 | 11 | 12 | 13 | 14 |
| 15 | 16 | 17 | 18 | 19 | 20 | 21 |
| 22 | 23 | 24 | 25 | 26 | 27 | 28 |
| 29 | 30 | 31 |
- SQL import
- 회원정보 수정
- if else if
- 스프링부트 로그인
- 중첩for
- System클래스
- MySQL workbench dump
- 접근제어자
- 중첩 if
- SpringSecurity 로그인
- 이클립스 설치
- SpringBoot
- 인텔리제이 Web 애플리케이션
- 별찍기
- D2Coding
- JSP 실습
- SpringSecurity 로그아웃
- Scanner 시간구하기
- 스프링시큐리티 로그아웃
- Springsecurity
- if else
- SQL dump
- JAVA 변수
- StringBuilder
- StringBuffer
- 클래스 형변환
- @PreAuthorize("isAuthenticated()")
- 증감 연산자
- jdk 설정
- Node.js 설치
- Today
- Total
목록Back_End/SpringBoot (19)
gi_dor
EXPLAIN SELECT * FROM rent_complete WHERE sgg_cd = '11305' AND umd_nm = '미아동' AND area BETWEEN 25 AND 36;type: ALL 데이터베이스가 '풀 테이블 스캔(Full Table Scan)'을 수행의미: rent_complete 테이블의 처음부터 끝까지 모든 데이터를 하나하나 다 뒤져서 조건을 검사하고 있다는 뜻possible_keys: , key: 이 검색 쿼리를 빠르게 만들어줄 '인덱스(색인)'가 아예 존재하지 않거나 사용되지 않고 있다rows: 165,169이 쿼리의 결과를 찾기 위해 DB 엔진이 약 16만 5천 건의 데이터를 읽어야 한다고 `예측` 하고 있다filtered: 0.11..
RentCompleteSearchDTO 이름을 RentSearchConditionDTO로 변경해야하는데 수정할곳이 많아서 그냥두기로함1. 검색 조건을 담을 DTO HTML 에서 Controller 로 검색 조건들을 전달하기 위해 필요하다@Getter@Setterpublic class RentCompleteSearchDTO { private String sggCd; // 시군구 코드 private String umdNm; // 법정동 이름 private String name; // 건물명 private Integer minDeposit; // 최소 보증금 private Integer maxDeposit; // 최대 보증금 private In..
외부 API를 연동하거나 JSON/XML 데이터를 다룰 때 '필드 이름 불일치' 문제를 해결해준다 필드 다 만들었는데, 왜 데이터가 안 들어오는거지 ?SpringBoot로 이번 사이드 프로젝트를 개발하면서 RestTemplate 으로 외부 API를 호출하고 그 결과를 DTO 로 변환했다. 그런데 API 응답 데이터의 필드 이름과 내 DTO의 필드 이름이 미묘하게 달라서 데이터가 매핑되지 않고 null 값만 들어왔다 API는 user_id라고 주는데 내 DTO에는 Java 스타일인 userId라고 선언하거나 API가 offiNm처럼 알기 어려운 줄임말 ? 축약어 ? 를 사용하고 있을 때 문제가 발생한다 @JsonProperty , 데이터와 객체를 이어준다"데이터(JSON/XML)의 필드 이름(Key)과..
비동기 처리 작업은 멀티스레드를 사용해 작업을 분리하고 , 그 작업이 끝날 때 까지 대기하지 않고 다른작업을 처리할 수 있다스프링부트에서는 @Async 어노테이션과 CompletableFuture 클래스를 사용해 비동기 처리를 구현할 수 있다- @Async 는 해당 메서드를 비동기로 실행하도록 설정하고 - CompletableFuture 비동기 처리를 위한 인터페이스 , 비동기 작업이 완료된 이후 결과값을 처리할수 있는 메서드를 제공한다회원가입 페이지에서 회원가입이 완료되면 이메일은 전송하교 , 완료되었다는 페이지를 보여주게 구성했다면@Async만 사용할 경우이메일이 성공적으로 전송되었는지 실패했는지 , 언제 끝나는지 정보가 없다그저 비동기 작업을 하고 결과를 신경쓰지 않는다결과적으로 이메일이 실제로 ..
Cache와 Caffeine Cache캐시(cache) : 데이터나 값을 미리 복사해 놓는 임시 장소Local Cache서버마다 캐시를 따로 저장다른 서버의 캐시를 참조하기 어려움속도 빠름로컬 서버 장비의 Resource를 이용한다. (Memory, Disk)Global Cache여러 서버에서 캐시 서버 접근 및 참조 가능별도의 캐시 서버 이용 → 서버 간 데이터 공유가 쉬움네트워크 트래픽을 사용해야 해서 로컬 캐시보다는 느리다.데이터를 분산하여 저장 가능Caffeine CacheSpring Boot 3부터 @Bean으로 org.springframework.cache.CacheManager의 EhCacheCacheManager 구현은 더 이상 지원되지 않는다고 한다....... 인강에서는 ehCache ..
