728x90
반응형

2018/09 3

JPA QueryDsl 에서 Group By Count 값 가져오기

JPA, QueryDsl 쓰기 참 힘들다. 그래도 하나 하나 어렵게 해 나가고 있는데 오늘은 또 Group By한 Count 개수를 반환하는 것을 만든 삽질 내용을 올린다. 리파지토리 단 소스는 아래와 같다. @Override public QueryResults getBusinessTotalCount() { QUser user = QUser.user; return from(user).where(user.userType.eq(UserType.B2B)).groupBy(user.platform).select(user.platform, user.platform.count()).fetchResults(); } 그리고 가지고 온 내용을 가지고 맵으로 이쁘게 정렬해서 반환해 주면 된다. public Map getBu..

Java/Spring 2018.09.28

RestTemplate에서 PUT으로 파라미터 전송하기

http로 값을 전송 하면서 보통 GET, POST를 많이 쓰고 PUT 으로는 전송을 잘 안하게 되는데, PUT으로 받아야 하는 API를 만들다가 값이 잘 전송이 안된다는 것을 알게 되었고, 이럴 때 어떻게 값을 전송해야 하는지 삽질의 결과물을 남겨 둔다. 보통 postman을 사용하여 값을 전송하는데 POST일 경우에는 body의 Typ을 form-data 또는 raw를 하게 된다. PUT일 경우에도 form-data 로 전송하니 값을 받을 수 없어서 이리 저리 확인해 보니 PUT일 경우에는 다음과 같이 전송 해야 한다. 이와 마찬가지로 Spring에서 RestTemplate를 이용하여 PUT 파라미터를 전송하게 될 경우 아래와 같이 하여야 한다. MultiValueMap body = new Linke..

Java/Spring 2018.09.13

Jackson ObjectMapper에서 json data를 Map이 아니라 Object로 받기

API 통신을 하면 보통 데이터 외에 Code나 Message가 같이 오고, 필요한 데이터는 한번 가공해서 받아야 한다. 그런데 이렇게 받게 되는 경우 안의 데이터가 무조건 HashMap으로 받아지게 된다. 이런 경우에 원하는 Object로 받기 위해 제네릭을 사용해 보았지만 역시 맵으로만 받아지게 되어서 구글링을 통해 해결하였다. 다음과 같은 방법으로 사용하면 된다. import com.fasterxml.jackson.databind.ObjectMapper; import org.springframework.web.client.RestTemplate; import com.fasterxml.jackson.core.type.TypeReference; String response = restTemplate.p..

Java/Spring 2018.09.12
728x90
반응형