일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 멱등활용
- RFC723x
- HTTP3
- 김영한JPA
- gitrevert
- http
- SpringBoot
- JPA
- 무상태프로토콜
- @Entity
- 자바ORM표준프로그래밍
- initialDelay
- gitreset
- Invalid bound statement (not found)
- @Table
- ERROR TYPE : org.apache.ibatis.binding.BindingException
- 캐쉬가능
- org.apache.ibatis.binding.BindingException
- hibernate.dialect
- KAKAOLOGINAPI
- 네이버 연결된 서비스
- anyMatch
- DB방언
- HTTPMESSAGE
- 매핑정보가없는필드
- fixedDelay
- Transaction not successfully started
- Git
- 네이버로그인API
- 데이터베이스 방언
- Today
- Total
목록전체 글 (132)
twocowsong
웹 환경 - Java, SpringBoot 순서 1. 네이버 개발자에서 애플리케이션 등록 https://developers.naver.com/main/ NAVER Developers 네이버 오픈 API들을 활용해 개발자들이 다양한 애플리케이션을 개발할 수 있도록 API 가이드와 SDK를 제공합니다. 제공중인 오픈 API에는 네이버 로그인, 검색, 단축URL, 캡차를 비롯 기계번역, 음 developers.naver.com 2. SDK 설정 및 화면 셋팅 (네이버의 경우 버튼 이미지를 호출하는방식이 다른 SNS와 다릅니다.) 3. 서버에서 API를 통한 AccessToken 검증 1. 네이버 개발자에서 애플리케이션 등록 1번 바로가기를 통해 네이버 개발자에서 로그인을 해주세요. 그 후 애플리케이션 등록 화..
웹 환경 - Java, SpringBoot 순서 1. 카카오톡 개발자 사이트에서 애플리케이션을 등록합니다. - 카카오 개발자 바로가기 2. 등록된 애플리케이션에서 키를 받고 플랫폼 정보를 등록합니다. 3. 카카오에서 제공해주는 SDK를 다운받고 로그인 화면에서 스크립트를 부릅니다. 4. 카카오로그인이 성공적으로 이루어지면 id, accesstoken을 서버로 전송하게됩니다. 5. 서버에서 api 통신을 통해 입력받은 accesstoken으로 정상데이터 확인을 다시합니다. (서버에서 확인하는 이유는 스크립트에서 조작할수있기때문입니다.) 6. 정상적으로 입력받았으면 로그인을 시킵니다. (로그인은 기능 현재 글에서 없습니다.) 카카오 개발자화면은 카카오가 언제든지 바꿀수있습니다. 화면만 그대로 따라하지마시구 ..
개발시 상황에따라 로컬, 개발, 운영 환경에맞게 변경하고싶은값들이있습니다. 예를들면 디비정보나, url정보가 있을것같습니다. 상황에 맞게 하드코딩되어진 변수들을 한개씩 수정하다보면 위험이 많이발생하기에 대체로 properties에 환경에 맞게 선언해두고 가져다가 사용을 많이합니다. 인텔리제이에서 Active profiles라는 입력란이있습니다. (인텔리제이 무료버전에서는 없을수 있습니다.) 여기에 자신이 현재 어디를 바라볼지에 대한정보를 입력하면됩니다. 저는 로컬PC에서 개발을 하기에 local이라고 선언하겠습니다. properties파일들을 상황에맞게 사용하기위해 위와 같이 파일을 만들었습니다. application-{Active profiles 값}.properties 으로 이름을 설정해주시면 스프링..
캐시 무효화 캐쉬를 무효화를 하여도 웹브라우저에서 GET요청이면 캐쉬를 사용합니다. Cache-Control 확실한 캐시 무효화 응답 • Cache-Control: no-cache, no-store, must-revalidate • Pragma: no-cache • HTTP 1.0 하위 호환 Cache-Control 캐시 지시어(directives) - 확실한 캐시 무효화 • Cache-Control: no-cache 데이터는 캐시해도 되지만, 항상 원 서버에 검증하고 사용(이름에 주의!) • Cache-Control: no-store 데이터에 민감한 정보가 있으므로 저장하면 안됨 (메모리에서 사용하고 최대한 빨리 삭제) • Cache-Control: must-revalidate • 캐시 만료후 최초 조..
프록시 서버 미국에있는 서버에 이미지를 다운받을경우 0.5초씩걸린다고 가정해봅시다. 이때 프록시 캐쉬 서버를 도입하게됩니다. (EX ) CDN...) 자료 요청 시 웹브라이저가 원서버가아닌 프록시 서버에 접근하게 만듭니다. 기존에 0.5초가 걸렸던게 0.1초만에 응답을 받게됩니다. Cache-Control 캐시 지시어(directives) - 기타 • Cache-Control: public • 응답이 public 캐시에 저장되어도 됨 • ex) 공용으로 사용하는 이미지의 경우 public으로 설정하여 cdn을 통해 다운로드 받음 • Cache-Control: private • 응답이 해당 사용자만을 위한 것임, private 캐시에 저장해야 함(기본값) • Cache-Control: s-maxage • ..
캐시 제어 헤더 • Cache-Control: 캐시 제어 • Pragma: 캐시 제어(하위 호환) • Expires: 캐시 유효 기간(하위 호환) Cache-Control 캐시 지시어(directives) • Cache-Control: max-age 캐시 유효 시간, 초 단위 • Cache-Control: no-cache 데이터는 캐시해도 되지만, 항상 원(origin) 서버에 검증하고 사용 • Cache-Control: no-store 데이터에 민감한 정보가 있으므로 저장하면 안됨 (메모리에서 사용하고 최대한 빨리 삭제) Pragma 캐시 제어(하위 호환) • Pragma: no-cache • HTTP 1.0 하위 호환 Expires 캐시 만료일 지정(하위 호환) • expires: Mon, 01 Ja..
검증 헤더와 조건부 요청2 • 검증 헤더 • 캐시 데이터와 서버 데이터가 같은지 검증하는 데이터 • Last-Modified , ETag • 조건부 요청 헤더 • 검증 헤더로 조건에 따른 분기 • If-Modified-Since: Last-Modified 사용 • If-None-Match: ETag 사용 • 조건이 만족하면 200 OK ( 새로 다운 ) • 조건이 만족하지 않으면 304 Not Modified (브라우저 캐쉬에 이미지와 서버에이미지가 같은경우) If-Modified-Since: 이후에 데이터가 수정되었으면? 데이터 미변경 예시 (다운로드 하지않음) • 캐시: 2020년 11월 10일 10:00:00 vs 서버: 2020년 11월 10일 10:00:00 • 304 Not Modified, ..