320x100 Blog189 중복 코드 제거, MySQL 연동 먼저 컨트롤러에서 세션을 가져올 때마다 SessionUser user = (SessionUser) httpSession.getAttribute("user"); 이 코드를 사용한다면 상당히 번거로울 것이다. 따라서 파라미터에서 자동으로 가져올 수 있도록 설정한다. LoginUser 어노테이션을 생성해주고, ElementType을 PARAMETER로 설정해준다. package com.david.matjipfind.config.auth; import com.david.matjipfind.config.auth.dto.SessionUser; import lombok.RequiredArgsConstructor; import org.springframework.core.MethodParameter; import or.. 2021. 1. 22. 유저 키워드 기억 기능, 기타 버그 수정 먼저 유저 키워드 기능을 구현하기 위해 saveKeyword 함수를 saveData 로 변경하고 위치 정보도 함께 가져왔다. position 파라미터를 가져와서 문자열로 변환 후 같이 넘겨준다. 매핑 주소도 data로 바꿨다. 컨트롤러에서는 키워드 저장을 위한 savePosition함수를 호출해준다. 매개변수는 id와 position이다. 서비스 객체에 위치를 저장하기 위한 로직을 만든다. 키워드를 저장하기 위한 로직과 완전히 같다. 이렇게 구성하고 검색을 시도한 뒤 DB를 살펴보면 이런 식으로 좌표정보가 저장되어 있다. (위도, 경도) 이를 가져와서 실제로 지도에 넣기 위한 코드이다. 일단 그냥 가져오게 되면 "(위도, 경도)" 의 형태인 문자열이기 때문에, split을 통해 위도와 경도를 분리해주고,.. 2021. 1. 21. [CLASS 2]백준 1181번, 1436번, 2609번 1181번 : 단어 정렬 문제를 보자마자 든 생각 : sort() 내 코드(날먹): wordsSet = set() for _ in range(int(input())): wordsSet.add(input()) words = list(wordsSet) words.sort() words.sort(key=lambda x:len(x)) for word in words: print(word) 파이썬! 파이썬! 파이썬! 파이썬! 이 때를 위해 파이썬을 하는게 아닌가! 아주 간단하다. 중복제거 -> set 정렬 -> sort 약간 아쉬운 점은 stdin을 사용했다면 속도가 훨씬 빨려졌을 것이다. 1436번 : 영화감독 숌 666이 포함된 수를 찾아내어 넘버링하는 문제이다. 나는 가장 직관적으로 이렇게 코드를 작성했다... 2021. 1. 20. Ajax를 이용한 최근키워드 실시간 DB저장 기능 키워드를 통한 검색시 Ajax를 이용하여 실시간으로 새로고침하지 않고(비동기) DB에 정보를 저장하고, 나중에 다시 로그인 시 DB에서 정보를 가져와서 띄워주는 기능을 구현한다. 먼저 mainController에서 세션에 저장된 여려가지 유저 정보를 가져온다. 그리고 UserRepository에 최근 키워드를 가지고 오기 위한 set 메서드 추가 UserService 객체를 생성해서 saveKeyword 메서드를 작성한다. Controller로부터 id와 keyword를 받아와서, id 를 통해 User 객체를 가져오고, 키워드를 저장한 뒤 레포지토리의 save 메서드를 사용해 update 해준다. 그리고 세션의 user 를 갱신해 준다. 컨트롤러에서는 해당 Service의 메서드를 호출해 준다. Aja.. 2021. 1. 20. 이전 1 ··· 30 31 32 33 34 35 36 ··· 48 다음