본문 바로가기

Spring25

관리자 웹 마이그레이션 프로젝트 정리 프로젝트 배경 기존 18개의 서버와 9개의 DB로 나뉘어 저 있어 운영 및 관리와 보안의 위험성이 존재합니다. 또한 20년이 넘은 JSP로 만들어진 구 애플리케이션으로 느린 페이지 로딩 시간과 비효율적인 콘텐츠 관리 시스템, 비응답형 웹 디자인 및 사용자 비 친화적이기 때문에  사용자의 UI/UX 측면에서의 향상과 차 후 리셀러(유통) 활성화로 점진적 시장 점유율 확대와 콘텐츠 관리 용시성과 효율성 증가를 목표로 만들게 되었습니다.   프로젝트 개요 이 프로젝트는 문자 전문기업을 위한 관리자 웹 애플리케이션 입니다. 해당 애플리케이션은 React와 Next.js를 사용하여 프론트앤드를 개바하였으며, 백앤드는 Kotlin과 Spring Boot 를 사용하여 구축하였습니다. 이 애플리케이션은 문자 전송을 위.. 2024. 5. 11.
Spring Security 기본(세션, 스프링시큐리티) 스프링 시큐리티란 - 인증/인가와 보안 기능을 담당하는 라이브러리 - 쉽게 풀이하면 로그인, 권한설정, 권한검사 기능 등을 제공 - 원리 : 서블릿 필터를 이용 사용자가 리퀘스트를 주면 스프링 엠브시에서 리스폰스를 줌 즉 사용자가 리퀘스트를 서블릿 컨네이너에 주고 서블릿 컨네이너 즉 톰켓과 같은 것이 리스폰스해준다. 다시 서블릿 컨네이너에서 스프링 DispatcherServlet 에 요청하면 컨네이터네 리스폰스 해준다. 서블릿 컨네이너에서 리스폰스 리퀘스트간 스프링 디스패치 사이에 필터로 시큐리티를 구현 바로 필터를 구현하면 스프링 빈을 인식하지 못하므로, 스프링에게 구현을 위임한다. 스프링 시큐리티 bean은 필터들로 구성되어 있고, 이 필터들의 모음을 securityfilterchain이라고 부른다... 2023. 3. 13.
Spring WatchaPedia 클론코딩 프로젝트 취향 분석(선호 배우, 국가, 장르, 감상 시간) 🎬 선호배우 분석 Service public List peopleCnt(Long userIdx){ Map peopleMap = new HashMap(); List movIdxs = starRepository.findStarMovie(userIdx); List peopleList = List.of(movieRepository.findPeopleList(movIdxs).toString() .split("\\[")[1].split("]")[0].split(", ")); for(String str: peopleList){ String[] personList = str.split(","); for(String per : personList){ if(per.contains("주연")){ Long personIdx .. 2023. 3. 8.
Spring 클론코딩 프로젝트 취향분석( 유저정보, 평가수, 별점분포) 🎬 취향분석 유저 아이디 타임리프 입력 부분 취향분석 ㅁㄴㅇ tb_user 테이블에 있는 해당 로그인한 정보를 출력하는 부분이다. 🎬 취향분석 유저 평가수 타임리프 부분 37 영화 21 TV 프로그램 11 책 20 웹툰 해당 콘텐츠에 대한 별점의 수를 합처 출력하는 부분이다. 🎬 취향분석 유저 평가 별점 분포 타임리프 부분 대중의 평가에 잘 휘둘리지 않는 '지조파' 해당 사용자가 준 별점의 평가를 기준으로 사용자의 성향을 글로 표현하였다. 기존 왓챠피디아는 20여개 이상의 별점 성향이 존재하지만 클론코딩간 많은 데이터가 존재하지 않고 동일한 기능의 반복이기 때문에 '독수리파'와 같이 특정 3개의 성향을 표출하였다. 그래프 표현 방식은 기존 DetailPage의 그래프 방식과 유사하다. 🎬 취향분석 유저 .. 2023. 3. 7.