springboot9 Google Cloud API [OCR] 구현 구글 공식 문서를 이용해 구현https://cloud.google.com/vision/docs/ocr?hl=ko 이미지의 텍스트 감지 | Cloud Vision API | Google Cloud의견 보내기 이미지의 텍스트 감지 컬렉션을 사용해 정리하기 내 환경설정을 기준으로 콘텐츠를 저장하고 분류하세요. 스캔된 문서에서 텍스트를 감지하는 경우 광학 문자 인식, 구조화된 양식cloud.google.com 로컬 이미지 분석 vs. 원격 이미지 분석사용자가 사진을 찍으면, 사진 안에 있는 텍스트를 읽어들여 다음 화면에서 보여주면 되는 거라, 로컬 이미지 텍스트 감지 방법을 선택 를 하려다가, 문서화된 글씨가 아닌 손글씨를 분석해야할 때 더 적합한 API를 사용하기로 했다. https://cloud.go.. 2025. 3. 18. 문자 sms 인증 + db 활용 고민 내가 구현해야 할 것문자인증 시 들어오는 값은 [국가번호 + 전화번호]국가번호는 3개 중 하나로 파싱 후 이에 따라 국적 분류해야함문자인증 연결은 1. 회원가입 2. 전화번호 수정mysql에 sms_code 속성 추가한 후 이를 저장한 뒤, 비교해서 같은 값이면 인증 성공 (시간 초과 시 실패)인증 다시 할 때마다 db에 있는 값 갱신1. sms 인증 코드 구현 (mysql 코드 저장 포함)2. 국가번호 파싱 -> 국가 저장 포함 -> sms 인증 연결 1. [국가번호 + 전화번호] 파싱// 국가 번호별 국적 매핑public static final Map COUNTRY_NATIONALITY_MAP = Map.of( "+82", "South Korea", // 대한민국 "+1".. 2025. 3. 10. 7. 게시글 수정하기: Update 게시판에 작성한 글을 수정하려면 해당 글을 불러와 수정할 수 있는 입력 상태로 만들어야 함그다음 내용을 입력하고 다시 전송하면 DB에 반영돼 최종적으로 수정됨 (데이터 수정 실습 2단계) 만들고 기존 데이터 불러오기데이터를 수정해 DB에 반영한 후 결과를 볼 수 있게 로 리다이렉트하기(1단계 동작 알고리즘)에서 [Edit] 버튼 클릭요청을 받은 컨트롤러는 해당 글의 id로 DB에서 데이터를 찾아 가져옴컨트롤러는 가져온 데이터를 뷰에서 사용할 수 있도록 모델에 등록모델에 등록된 데이터를 에서 보여줌 그럼 사용자가 내용을 수정할 수 있는 상태가 됨(2단계 동작 알고리즘)폼 데이터 (수정 요청 데이터)를 DTO에 담아 컨트롤러에서 받음DTO를 엔티티로 변환DB에서 기존 데이터를 수정 데이터로 갱신수정 데이터를.. 2024. 5. 11. 6. 게시판 내 페이지 이동하기 1.링크와 리다이텍트란이 장에서는 게시판 내 페이지 이동을 구현앞에서 만든 /articles, 즉 목록 페이지에 링크와 리다이렉트라는 기능을 이용해 구현 링크(link): 미리 정해 놓은 요청을 간편히 전송하는 기능으로, 보통 페이지 이동을 위해 사용→ HTML의 태그 혹은 태그로 작성,클라이언트가 링크를 통해 어느 페이지로 이동하겠다고 요청하면 서버는 결과 페이지를 응답어떤 경우에는 서버에서 결과 페이지를 응답하지 않고 재요청하라는 회신을 보내기도 함(a는 업무의 일부만 처리하고 ‘나머지는 b에서 담당하니 b로 연락해 보시겠습니까?’라고 말했다면 a에서 b로 전화할 것임) → 리다이렉트 리다이렉트(redirect): 클라이언트가 보낸 요청을 마친 후 계속해서 처리할 다음 요청 주소를 재지시하는 것이.. 2024. 5. 11. 5. 게시글 읽기: Read 1.데이터 조회 과정웹 페이지에서 게시글 등록 → 서버를 통해 DB에 저장 됨이 데이터를 웹 페이지에 출력하는 과정은 앞서 배운 다양한 요소 간 상호 작용으로 이루어짐사용자가 데이터를 조회해 달라고 웹 페이지에서 URL 요청을 보냄서버의 컨트롤러가 요청을 받아 해당 URL에서 찾으려는 데이터 정보를 리파지터리에 전달리파지터리는 정보를 가지고 DB에 데이터 조회를 요청DB는 해당 데이터를 찾아 이를 엔티티로 반환반환된 엔티티는 모델을 통해 뷰 템플릿으로 전달최종적으로 결과 뷰 페이지가 완성돼 사용자의 화면에 출력됨2.단일 데이터 조회하기(제목: 가나다라 / 내용: 1111 추가함) URL 요청받기DB에 저장한 데이터를 웹 페이지에서 보려면 해당 출력 페이지에 접속해야 함(URL 요청 필요)→ 게시글 1번 .. 2024. 5. 11. 4. 롬복과 리팩터링 1.롬복이란?롬복(lombok): 코드를 간소화해 주는 라이브러리 → 필수 코드를 간편하게 작성할 수 있음 로깅(logging): 프로그램의 수행 과정을 기록으로 남기는 것 (서버에서 일어나는 모든 일을 기록 가능)(롬복의 기능: 코드 반복 최소화 + 로깅 기능 지원)+) 로깅 기능을 통해 println() 문 개선 가능 리팩터링(refactoring): 코드의 기능에는 변함이 없이 코드의 구조 또는 성능을 개선하는 작업 2.롬복을 활용해 리팩터링하기롬복 설치하기firstproject > src 아래에 build.gradle 파일에 롬복을 추가코드 중간에 dependencices {} 블록에는 프로젝트를 생성할 때 추가한 도구들이 적혀 있음롬복도 여기 추가 (코드 추가)compileOnly 'org.pr.. 2024. 5. 11. 이전 1 2 다음