프로젝트 & 실습/VarChar_JSP_ver_Proj10 [프로젝트] 반응형 중고차 웹 사이트 VarChar 프로젝트명 : VarChar MVC 패턴 기반 반응형 중고차 웹 사이트 개발환경 Eclipse - 로직/DB관리 VisualStudioCode - 웹 제작 Slack - 자료공유/회의록/버전관리 Discord - 회의 https://github.com/hhyyyjun/VarCharProjectVer1 GitHub - hhyyyjun/VarCharProjectVer1 Contribute to hhyyyjun/VarCharProjectVer1 development by creating an account on GitHub. github.com 2023. 1. 10. [프로젝트] 이메일 API 아이디 및 비밀번호를 잊어버렸을 때 이메일을 통하여 회원정보를 찾을 수 있도록 구현하였다. 비밀번호는 임의의 비밀번호를 발행하여 이메일로 전송하였다. 해당 API는 구글 API를 이용하였다. 본 포스팅은 프로젝트에 적용한 코드 설명이다.(API에 대한 자세한 사용방법은 맨 하단에 참고블로그 있음) 이메일 API에 필요한 jar파일 jar 파일은 프로젝트 경로의 - src - main - webapp - WEB-INF - lib 폴더에 넣도록 한다. emailVO 이메일을 통하여 정보를 전송해야 하므로 email 변수에 대한 VO를 생성하였다. 아이디 찾기 1. findAccount.jsp(아이디/비밀번호찾기 페이지) 아이디를 찾기 위해서 사용자의 '이름'과 '이메일'이 필요하도록 하였다. 웹 페이.. 2023. 1. 10. [프로젝트] 문자 API 회원가입 시 문자 인증을 통해 가입할 수 있도록 하기 위하여 문자 API를 사용해보았다. 타이머를 생성하여 인증번호 전송 후 3분동안 인증할 수 있도록 하였고, 3분이 지나면 인증번호 확인 버튼을 비활성화 시키도록 작성하였다. 문자 API 코드 및 키 발급 https://console.coolsms.co.kr/oauth2/login?message=%EB%A1%9C%EA%B7%B8%EC%9D%B8%EC%9D%B4%20%ED%95%84%EC%9A%94%ED%95%A9%EB%8B%88%EB%8B%A4&returnUrl=http%3A%2F%2Fconsole.coolsms.co.kr%2Fdashboard https://console.coolsms.co.kr/oauth2/login?message=%EB%A1%9.. 2023. 1. 10. [프로젝트] 주소 API 회원가입 시 주소 정보를 저장하도록 하기 위해 다음의 주소 api를 사용하였다. https://postcode.map.daum.net/guide Daum 우편번호 서비스 우편번호 검색과 도로명 주소 입력 기능을 너무 간단하게 적용할 수 있는 방법. Daum 우편번호 서비스를 이용해보세요. 어느 사이트에서나 무료로 제약없이 사용 가능하답니다. postcode.map.daum.net 카카오 주소 API CDN 1. signup.jsp(회원가입 페이지) 버튼 클릭시 주소 검색하는 api가 실행되도록 하였다. 또한 주소 검색 후 본인의 주소를 클릭 시 주소 데이터가 들어갈 input 태그에 id명 addressinput을 부여하였다. 상세 주소까지 적기 위해 input 태그를 사용하였다. 위에서 검색.. 2023. 1. 8. [프로젝트] 아이디 중복검사 회원가입 시 동일한 아이디가 생성되는 것을 막고자 ID를 중복검사하는 기능을 구현하였다. 1. signup.jsp(회원가입 페이지) 중복확인 기능을 실행할 버튼 태그에 id명을 부여하였다. 버튼이 클릭되었을 때 실행될 이벤트를 위해 id명에 대한 상수 idDoubleCheckBtn을 생성하였다. DB에 데이터 존재유무를 확인하기 위해 ajax를 사용하였다. 서블릿을 사용하기 때문에 IDCheck 요청과 함께 mid 파라미터 값을 전송하였다. 2. IDCheck.java(서블릿) IDCheck 요청을 받을 서블릿을 생성하였다. ajax로부터 mid 파라미터 값을 받아 VO 객체에 저장하고 DAO의 아이디 중복 메서드 check()를 통하여 DB에 중복된 아이디가 있는지 확인한다. 이후 j.. 2023. 1. 8. [프로젝트] 정렬기능 추가&필터검색 후 필터검색 값 유지하기 필터 기능 외에 데이터들의 최신순/가격순/주행거리순/이름순에 대한 정렬 기능을 추가하였다. 1. SearchVO.java 먼저 VO에 정렬 데이터가 저장될 변수를 추가하였다. 2. filterSearch.jsp (filter.jsp 에서 파일명 변경됨) 정렬에 대한 select 태그를 사용하였고, 파라미터 값으로 받을 name명을 sort로 지정하였다. 또한 최신순/제목순/가격순/주행거리순에 따라 정렬할 예정이기 때문에 4개의 option 태그를 사용하였다. 3. CarSearchAction.java option태그의 value 값을 받아 sort 속성명으로 저장하였고, VO에 존재하는 Check 객체에 저장하였다. 4. SearchDAO.java 조건식에 따라 받아온 파라미터 값을 비교하.. 2023. 1. 8. [프로젝트] 필터 검색을 통해 원하는 정보 출력하기(ft. FrontController) 프로젝트의 메인 기능인 필터 기능을 구현해보았다. 필터는 연료/지역/가격/주행거리/연식 총 5개의 카테고리로 분류하여 검색하도록 하였다. 연료와 지역의 경우에는 각 항목에서 다중선택을 할 수 있도록 하였다. SearchVO.java - 필터 검색에 필요한 데이터가 들어가는 곳 SearchDAO.java - sql문을 통해 필요한 데이터를 출력할 메서드 선언 CarSearchAction.java - FrontController를 통해 들어온 요청을 처리할 기능 및 출력할 데이터의 속성값 선언 FrontController.java - 사용자 요청이 들어왔을 때 해당 경로(action)로 이동 index.jsp - 처음 서버를 실행할 페이지 filter.jsp - 필터검색을 위한 html 구조 및 표현.. 2023. 1. 8. [프로젝트] 리스너 서블릿을 활용한 데이터 크롤링 java만을 이용한 데이터 크롤링 https://hhyyyjun.tistory.com/238 [프로젝트] 데이터 크롤링(img 부분 업데이트) 프로젝트에 사용될 데이터를 크롤링하기 위해 여러 중고차 사이트를 참고하였음 but 대부분의 사이트에서 크롤링 시 크롤링을 못하게 막아두었고, 보배드림 중고차 사이트에서 유일하게 가능하 hhyyyjun.tistory.com 앞서 데이터 크롤링을 Java로 먼저 진행해보았다. 프로젝트에는 웹 실행 시 크롤링을 진행하여 데이터를 받아올 예정이므로 리스너 서블릿을 활용하였다. 리스너 설정 웹 어플리케이션이 실행될 때 서블릿이 감지하고 동작하여 크롤링 메서드 실행 형광펜 - DB에 크롤링 데이터가 존재하는지 확인(바로 밑에 관련코드) DB에 데이터가 존재하는지 확인.. 2023. 1. 8. [프로젝트] 데이터 크롤링(img 부분 업데이트) 프로젝트에 사용될 데이터를 크롤링하기 위해 여러 중고차 사이트를 참고하였음 but 대부분의 사이트에서 크롤링 시 크롤링을 못하게 막아두었고, 보배드림 중고차 사이트에서 유일하게 가능하여서 진행하게 되었음 https://www.bobaedream.co.kr/cyber/CyberCar.php?sel_m_gubun=ALL&page=1&order=S11&view_size=70 사이버매장 | 보배드림 사이버매장 자동차 검색, 중고차 시세, 수입차, 국산차, 내차사기 www.bobaedream.co.kr 진행사항 - 먼저 java로직으로 데이터 크롤링 및 가공작업 추후에 리스너 서블릿으로 해당 크롤링 클래스를 호출하여 사용할 예정 총 크롤링할 데이터 상품 제목 상품 설명 연식 엔진 주행거리 가격 지역 이미지(U.. 2023. 1. 8. 이전 1 2 다음