Category/Project20 [개인프로젝트] 15일차 - 배열 탐색 마지막으로 구현할 기능은 정렬 및 탐색 기능이다. 현재 작업하고있는 프로젝트는 구인&구직 서비스로, 구직자는 자신의 이력서에 자신의 특성을 나타내는 해시태그 형태를 등록하고, 채용공고를 올리는 유저는 채용 직무에 맞는 선호하는 특성을 등록한다. 그리고, 해당 특성 항목들은 DB 테이블에서 다음과 같이 Personality 테이블의 id값을 참조하여 각각의 Resume, Employment 테이블들의 중간 테이블에서 받아주고있다. 하나의 이력서가 여러개의 특성을 가질수있고, 하나의 특성이 여러개의 이력서를 가질수있다. 또한 하나의 채용공고가 여러개의 특성을 가질수있고, 하나의 특성이 여러개의 특성을 가질수있다. Personality 테이블과 Resume, Personality 테이블과 Employ 테이블의.. 2024. 3. 2. [개인프로젝트] 13일차 - 제이쿼리,자바스크립트 제이쿼리를 사용한 모달팝업 사장님 로그인을 한뒤, 내 가게정보를 등록할때 가게 주소를 입력하면 이력서를 등록한 유저들중 가게 주소와 가까운 유저들만 골라서 리스트로 출력해주는 기능을 만들면서 모달팝업을 사용해서 출력하였다. 즉, 위 화면의 버튼 클릭시 아래 리스트가 ajax통신으로 출력되며, 리스트를 클릭하면 해당하는 유저에 대한 프로필이 팝업형태로 출력된다. 서버에서 보낸 복잡한 객체를 클라이언트 자바스크립트로 받기 해당 기능을 구현하기위해 AJAX로 받아온 데이터를 HTML에서 출력하는것이 아니라, 자바스크립트 코드의 일부분만 발췌하면, 직접 일일이 HTML 태그요소들을 제이쿼리로 만들어 append로 하나하나씩 갖다붙여주었다.. HTML코드상에서 짤때는 감이잡히는데 저렇게 자바스크립트 안에서 하나하.. 2024. 2. 28. [개인프로젝트] 11일차 - 스프링시큐리티+OAuth2 소셜로그인 스프링 시큐리티를 활용하여 OAuth2.0 소셜로그인 구현하기 개발환경 - 스프링부트 3.2.2 - 스프링 시큐리티 6.2 - 타임리프, JPA, MariaDB, OAuth2.0 소셜로그인을 구현하기위해서 OAuth2.0 라이브러리를 사용하는데, 보통 JWT와 함께 사용하여 JWT토큰과함께 사용해서 소셜로그인 기능을 구현하지만 스프링 시큐리티 세션만을 이용해서 소설로그인 기능을 구현하였다. OAuth2.0 소셜로그인 실행흐름 실행흐름을 크게 나누어보면, 1. 제일먼저 클라이언트가 네이버 로그인을 사용하기위해 해당 url로 요청을 보내면, 서버에서 네이버 로그인 인증을 시작하는 url 엔드포인트로 보낸다. 2. 사용자가 네이버 로그인화면에서 로그인에 성공하면, 네이버 로그인 api 신청하면서 미리 입력해둔.. 2024. 2. 27. [개인프로젝트] 10일차 - JPA 페이징처리,검색기능 채용공고 작성 기능 Owner 권한으로 로그인시 본인의 가게를 등록하고, 원하는 채용공고를 작성하는 기능을 추가 공고내용에서 개개인의 특성을 나타내는 해시태그 형태의 특성을 추가해서 구직자간에 매칭이 가능하도록 해주었다. 그리고, 채용 공고를 하나의 테이블로 관리하여 해당 채용 공고에 지원한 사람과 특정 유저가 지원한 공고들에 대해 연관관계매핑이 될수있도록 테이블을 분리하여 별도로 보관하였다. 채용 공고의 항목들을 지원자의 이력서의 양식과 일치시키기위해 정규식을 사용해서 이력서의 항목들과 일치시켰다. 이렇게 함으로써 채용 공고 - 이력서간 연관도가 증가하여 다양한 조건에서 매핑을 통해 원하는 조건의 공고,이력서를 찾을수있다. JPA 페이징처리를 사용하여 정렬 및 페이징처리 User는 올라온 채용 공고를 .. 2024. 2. 27. 이전 1 2 3 4 5 다음