본문 바로가기

728x90
반응형

개발

스프링부트 시작하기 + 개발준비 스프링부트 시작하기 스프링부트(Spring Boot)는 자바로 만들어진 웹 프레임워크(Web Framework)로 기존의 스프링 프레임워크보다 프로젝트를 아주 간편하게 설정 및 개발할 수 있는 프레임워크입니다. 여기서 웹 프레임워크는 웹 서버를 구현하기 위한 목적으로 만들어진 프레임워크입니다. 웹 서버를 구현하기 위해서는 페이지 구현, DB 관리, 유저 인증, API 서버, 사이트맵, 세션 관리 등의 여러가지 기능이 들어가야 하는데 각 기능을 보유한 라이브러리들을 한데 묶어서 개발자가 사용하기 편리하게 만들어놓은 프레임워크입니다. 스프링부트 장점 스프링부트는 웹 애플리케이션을 쉽고 빠르게 만들수 있습니다. 스프링 프레임워크를 사용하면 많은 XML 설정 파일 등을 작성해야 하고 설정하는 방법이 복잡하고 어.. 더보기
로또번호 생성기 - 파이썬 로또번호 크롤링(crawling) 파이썬 로또번호 크롤링 로또번호 생성기 사이트를 제작하면서 로또번호를 어떻게 생성할까 고민해 보았습니다. 저도 매주 로또를 사고 그 로또가 1등에 당첨되어 인생한방을 항상 꿈꾸는 사람중 한명입니다. 그런데 로또 1등에 당첨되기는 참 하늘에 별따기보다 더 어려운거 같습니다 ㅠㅠ 무튼, 확률이 높은 번호를 뽑을려면 어떻게 해야될까를 생각하다가 문득 든 생각이 현재까지 1등 당첨된 로또번호 데이터를 기반으로 로또를 생성하면 그냥 무작위로 생성하는거보다는 확률이 그나마 조금이라도 높지 않을까 생각 되었습니다. 그래서 로또번호 생성기 웹사이트를 제작하기 전에 준비 단계로 로또번호 데이터를 모으는 작업을 하였습니다. 데이터를 하나하나 수동으로 모으기에는 너무 많은 데이터라 자동으로 모으는 방법으로 파이썬으로 크롤링.. 더보기
로또번호 생성기 - Notice Lotto 사이트 오픈 로또번호 생성기 사이트 오픈 로또번호 생성기 사이트를 오픈하였습니다 !!!!! 평소에 로또에 대한 관심이 많아서 보다 확률이 높은 번호를 추출했으면 좋겠다 싶어서 만들어 보았습니다. 응용 소프트웨어 개발(C, C++, Python 등) 쪽으로만 공부하고 일을 하다가 웹쪽으로 공부를 해서 사이트를 하나 만들어보고 싶다는 생각이 들어 시작했는데 웹관련 공부나 개발은 거의 경험이 없는 상태라 웹관련 공부를 시작으로 디자인, 설계, 개발, 구현, 디버깅, 호스팅, 광고 연동 등의 모든 작업을 혼자 하려니 많은 시행착오를 겪었지만.. 끝내 완성을 하게 되었습니다. 오픈한지 얼마되지 않아서 아직 설정이나 미흡한 점은 많지만 사용자 분들이 이용하시는데는 불편함이 없을겁니다. 별도의 로그인이나 개인정보 입력없이 자유롭.. 더보기
카메라 영상에 실시간 Logo 이미지 합성 OpenCV 카메라 영상 logo 이미지 출력 카메라 영상 이미지에 logo 이미지를 합성하려면 이미지 별로 가중치를 두고 합성을 해야 정상적으로 이미지가 출력 됩니다. 이미지에 가중치를 두어 합성(산술연산)을 하는 함수입니다. CV_EXPORTS_W void addWeighted(InputArray src1, double alpha, InputArray src2, double beta, double gamma, OutputArray dst, int dtype=-1); src1 첫번째 영상입니다.(cv::Mat) alpha 첫번째 영상의 가중치입니다. 2개 영상의 가중치의 합은 1 입니다. src2 두번째 영상입니다.(cv::Mat) beta 두번째 영상의 가중치입니다. gamma 연산 결과에 가감할 상.. 더보기
카메라 영상에 실시간 Text 넣기(합성 및 출력) 개발사양 OS : Windows 10 개발 언어 : C++, QT, OpenCV 카메라 : AXIS P5635 MK II PTZ QT CMakeList.txt 에 OpenCV 라이브러리 추가 cmake_minimum_required(VERSION 3.5) ...... # OPENCV set(OpenCV_DIR "C:/OpenCV/opencv4.5.3/build") find_package(OpenCV REQUIRED) include_directories(${OpenCV_INCLUDE_DIRS}) ...... OpenCV 가 설치된 경로로 지정하여 설정하여 줍니다. 현재 설치된 OpenCV 버전은 4.5.3 버전이 설치되어 있습니다. OpenCV 카메라 영상 Text 입력 OpenCV 의 영상에 Text 를.. 더보기
이클립스 workspace 변경 방법 workspace 변경 workspace 변경하는 방법입니다. File - Switch Workspace - other 클릭 Browse 버튼 클릭해서 원하는 workspace 디렉터리 선택 launch 버튼을 클릭하면 workspace 가 변경됩니다. 더보기
REST API - URI 표현 REST 방식 URI 표현 서버에 데이터를 조회하는 것뿐만 아니라 추가, 수정, 삭제 기능도 REST 방식으로 요청해야 합니다. 이때 서버에 어떤 해우이를 요청할 것인가는 HTTP 메서드를 이용해 처리합니다. 메서드 기능 POST 추가(Create) GET 조회(Select) PUT 수정(Update) DELETE 삭제(Delete) [ REST 방식으로 요청하는 URI 형식 ] /작업명 /기본키 + 메서드 + 데이터 - 작업명 : 요청하는 작업 종류 - 기본키 : 요청하는 작업에 해당하는 대상의 기본키 - 메서드 : 요청하는 기능 - 데이터 : 기능 수행에 필요한 JSON 데이터 [ REST 로 게시판 기능 관련 URI 작성 ] 메서드 URI 기능 POST /boards + 데이터 새글 등록하기 GET.. 더보기
스프링 REST API - @ResponseEntity @ResponseEntity @RestController 는 별도의 View 를 제공하지 않은 채 데이터를 전달하므로 전달 과정에서 예외가 발생할 수 있습니다. 예외에 대해 좀 더 세밀한 제어가 필요한 경우 @ResponseEntity 클래스를 사용합니다. 쇼핑몰을 예를 들었을 때 주문에 이상이 생겨 일정 시간이 지나도 주문이 처리되지 않으면 서버에서 ResponseEntity 클래스에 HTTP 상태 코드를 설정하여 앱으로 전송하도록 합니다. 그러면 앱에서 HTTP 상태 코드를 인식할 수 있는 기능을 이용해 주문 상태나 예외 발생을 알려줍니다. [ HTTP 상태 코드 ] 그룹 코드 상수 설명 정보 응답 100 CONTINUE 클라이언트가 계속해서 요청하거나 요청이 완료된 경우에는 무시해도 된다는 정보를 .. 더보기