전체 글 269

vue.js 카카오지도 원그리기

기업회원가입 후 매장 등록을 할 때 1. 주소를 선택하면 매장 위치를 표시해주고 2. 배달 반경을 입력하면 매장 중심에서 n키로만큼 원을 그려주기였다 문서 https://apis.map.kakao.com/web/sample/drawShape/ 이렇게 마커가 뜨고 이동한다 이제 반경 숫자를 입력하면 이렇게 원이 나온다 여기서 다시 주소를 검색하거나 숫자를 바꿔도 자연스럽게 움직인다 소스를 봐 보자 1. 주소 마커 표시하기 1. 주소 선택이 완료되면 결과를 result로 들고 온다 2. 결과값이 ok라면 마커 표시 3. 반경까지 정했다면 재탐색 좌표를 중심으로 원 그려주기를 해준다 2-1. 원 그려주기 1. 반경 입력값이 숫자인지 검사한다 2. 원을 그리는 함수 호출한다 2-2. 원 그려주기 1. 이전에 그..

Jang_bo_go 2021.12.30

Springboot 사업자등록조회 api호출하기

기업회원을 받을 때 정상적인 사업자인지 검사를 해야 했다 다행히 나라에서 제공해주는 api가 있었고 사용하기만 하면 됐다 근데 왠..? postman에서 잘만됐는데 서버에서 하니까 안되는 것이었다 그래서 방법을 찾아봤다 내가 고통받은 에러는 "등록되지 않는 키였다" 문제는 restTemplate였고 api호출을 okhttp3을 주입하고 다시 시도하고 성공했다! api https://www.data.go.kr/data/15081808/openapi.do 국세청_사업자등록정보 진위확인 및 상태조회 서비스 국세청에서 제공하는 사업자등록정보 진위확인 및 사업자등록 상태조회 API 서비스입니다. www.data.go.kr 내가 찾은 글 https://imspear.tistory.com/m/130 OpenAPI 데..

Springboot/Api 2021.12.21

springboot sqs 문자/이메일전송

사실 이번 jangbogo프로젝트는 모놀리식 아키텍처가 아닌 마이크로아키텍처로 하려고 했으나! 그러면 진짜 프로젝트 완성 못할 거 같아서...ㅋㅋㅋ 다른 서버라고 치고 구현해보자! (나중에 배치만 따로만들자) 일단 springboot + sqs를 하는 방법은 https://www.youtube.com/watch?v=q3zo3YREfJI 이 분거 보는 게 최고다 s3/sns도 이분 꺼 보고 붙였다 이분 장점이 다른 코드에 추가가 아니라 그냥 어떻게 기본적으로 연결하는지 보여준다 디펜던시별로 차이가 약간있는데 영상으로는 // https://mvnrepository.com/artifact/org.springframework.cloud/spring-cloud-aws-messaging implementation ..

aws/SQS 2021.12.16

springboot Ec2 mysql 연동하기

드디어 내계정이 ec2가 접속이 되었다.. 알고 보니 내가 예전에~~ s3처음 연동할 때 깃허브에 내 키가 다 올라가 있었고 aws에서 캐치하고 막아버렸던 것이다 ㅠㅠ 겨우겨우 연락해서 이유를 알아내고 처리했다! 시작하자! ec2대시보드-> 인스턴스 시작-> Ubuntu Server 20.04 LTS(연도에 따라 다를 수 있음 프리티어 사용 가능하다고 하면 클릭) ->t2.micro-> mysql/a 어쩌고를 선택하면 포트번호 3306 자동 할당되고 사용자 지정에 0.0.0.0/0으로 모두 접근할 수 있게 해 준다 (테스 트니까) 그리고 https://mirae-kim.tistory.com/73 [AWS] AWS EC2에 mysql 설치하기 (ubuntu) 1. ubuntu 패키지 정보 업데이트 sudo..

aws/EC2 2021.12.16

vue.js eventbus 컴포넌트간 주고받기!

카카오 지도를 호출하였다 검색만 해주면 된다 문제는 컴포넌트 간에 어떻게 주고받아야 할지 몰랐다 쉽게 말해서 지도/내비 바/풋터는 한화면에 각기 다른 컴포넌트이다 즉 검색창에 타이핑 후 search버튼을 눌렀을 때 지도 컴포넌트에게 검색 값을 줘 야한다 구글링 결과 eventbus를 활용하기로 결정하였다! 1.eventbus 만들기 Vue.prototype.$EventBus = new Vue(); main.js에 이렇게만 해주면된다 2. 메서드 지정하기 네비 바로 가자 this.$EventBus.$emit('searchStore',storeKeyword); 뭔뜻이나면 searchStore로 storeKeyword를 전송한다는것이다 emit은 지정할때 on은 받을때 쓴다 받는곳으로 가보자! this.$Ev..

Jang_bo_go 2021.12.16

시작하며

프론트=vue.js 백엔드=springboot 클라우드=aws ec2/sqs/s3 형상관리=git&github 데이터베이스=mysql 목표 1.ec2를 이용해 베포까지하는게 목표이다 2.mysql을 ec2에 올려놓고 어디서든 접근가능하게 할것이다 -현재 rds로 변경 서버만 ec2베포예정 3.git을 적극적으로 활용할것이다 4.db에 좀더 이제 신경쓰기 내용 동네 마트배달서비스! 배달의 민족의 초초초초슈퍼 라이트 버전! 그동안 작업한 내용을 봐보자!

Jang_bo_go 2021.12.16

제네릭+optional을 이용하다

학원 프로젝트가 막바지에 도달했다 좋은 건지 나쁜 건지 모르겠지만 종이 한 장 차이정 도로 내가 조금 더 잘해서 장바구니/결제시스템/관리자 페이지 대부분을 맡았다 시간이 없는 관계로 매우 기능 위주로 백엔드에 집중해 구현 중이다 다른 팀원들도 도와줘야 해서 dto사용은 물론 본의 아니게 하드코딩 그 자체를 하고 있다... mybatis를 사용하는 데 사용할 때마다 jpa와 달리 optional로 받을 수없었다 그래서 생각한 게 optional을 결과 위에 씌어줘야 한다고 생각했다 다행히 잘 작동했다 예제 코드 Mapmap=Optional.ofNullable(buketDao.findByBid(bid)).orElseThrow(()->utillService.makeRuntimeEX("존재하지 않는 장바구니 품..

잠깐 개인프로젝트를 멈춰야 할거같다( 프로젝트 종료)

학원에서 마지막 스프링 프로젝트 조를 알려줬다 그래서 취업전 팀프로젝트에 많은 시간을 쏟아야할거 같다 이렇게 된김에 팀프로젝트 스프링 레거시를 한번 또 블로그에 끄적거려볼까 생각도 든다 일단 시간과내실력이 허락한다면 ㅋㅋ 최대한 블로그를 써봐야겠다 프로젝트 종료를 선언한다 이유 1.취업 활동과 겹쳐 흐름을 잃었다 2.vue.js로 또 다른 프로젝트시작 -다른 배달 웹페이지를 만들고 싶다라는 생각이들어서이다 3.작업형식의 변화 -이제 더이상 글을 쓸때 회원가입/로그인 이런 카테고리보다는 새롭게 알게된 사실위주로 쓸거같다 다음 프로젝트는 jangbogo이다 동네 마트 배달 서비스를 최대한 비슷하게 구현하려고 노력할것이다 이전과 다르게 조금더 타협없이 시간에 쫓기지 않고 만들 생각이다

wonderLand 2021.11.03

Springboot+vue.js 구매시스템만들기!(1) 카드결제요청 with 세틀뱅크

쿠폰/할인 코드/포인트 적용하는데 처음 적용해서 그런가 아 진짜 힘들었다.. 규칙 1. 한 상품의 최대 할인율이 정해져 있다 2. 쿠폰+할인 코드=총 할인금액이 최대 할인율을 넘어서면 안 된다 3. 포인트는 총금액에서 마이너스한다 4. 쿠폰/할인코드드중 퍼센트인 게 먼저 적용되고 그다음 마이너스가 적용된다 ex) 쿠폰=퍼센트/할인=금액 마이너스인 경우 쿠폰 적용 후 할인 적용 반대라면 반대로 적용 둘 다일 경우 마이너스 든 퍼센트 든 합해서 계산하면 된다 5. 쿠폰/할인 코드는 개별 적용/포인트는 총금액에서 마이너스 구현중 어려웠던 건.. 예를 들어 3잔의 커피를 주문하고 3장의 쿠폰/혹은 할인 코드가 적용된다면 총금액에 적용되는 게 아니라 개별 상품에 적용되게 하는 것이 힘들었다.. 일단 구현은 했다 ..

Springboot+vue.js 구매페이지 만들기!(1) 품목 표시

프런트 서버 사이드 바를 구해야 했다 부트스트랩 사이드 바를 하나 가져 와서 바꿨다 사이드바 추가 후 검색/페이징에 필요한 것들을 만들었다 사실 nexPage/beforePage는 변수만 다른 것이다 파라미터를 1/-1 받아주면서 합쳐보자 페이지 입장 시 파라미터 값을 찾아 서버로 요청을 보낸다 백엔드 서버 Service 조건대로 품목을 가져온다 public JSONObject getProducts(HttpServletRequest request) { 검색키워드에 따라 다른 쿼리문을 던진다 private List getProductVos(String kind,int start,String keyword) { 원래 sql 자체에도 조건문이 있는 걸로 아는데 일단 잘 몰라서 나눠주는 함수를 만들었다 테스트 ..