오늘은 짜증도 나고 재미도 있던 날이였다
기획, 프로세스 설계, 타사와 협의 모든 것을 내가 전부 다 하고 있다.
아오 진짜 -_- 오늘 좀 스트레스를 좀 많이 받았는데 오늘 모든게 잘 풀려서 그나마 괜찮긴 했는데
리더님이 타사와의 협의는 도와주고 계시지만 후,,,,
에픽 회고를 하는 날에 다 이야기 할 것이다 기필코
개발서버에 배포가 끝났고, 모든 작동이 잘 돌아가는 것이 확인됐다.
이제 운송장에 대한 검수가 끝나면 프로덕션에 올라가서 테스트하고 실사용이 진행될 것 같다.
정말...끝났따...
진짜진짜진짜 오래걸렸다(....)
진짜 개-판이다(....)
비즈니스를 위해서 일단 잘 돌아갈 수 있게 만들어놨다.
(대충 이 느낌)
그래서 정비기간이 생기면 그때 좀 디자인패턴을 적용해서 리팩토링을 할 예정이다...
(이러진 않겠지? 제발)
말로만 들어봤는데 우리팀에서 쓰고 있었다(!)
그런데 조회가 너무 어려워서 걍 한시간 반정도 열심히 웹서핑하다가 찾아봤다.
그래서 찾음!!
https://stackoverflow.com/questions/38797627/query-a-json-column-with-an-array-of-object-in-mysql
테이블에 JSON 컬럼이 존재함!
컬럼은 배열 속에 객체의 형태로 존재한다.
// Table Name : Menu
// Colunm Name : detail
[
{id : 10 , name : "피자"},
{id : 20 , name : "치킨"},
{id : 30 , name : "족발"}
]
const name = "피자"
const data = await this.connection
.createQueryBuilder(Menu,'menu')
.where(`JSON_CONTAINS(detail->'$[*].name', JSON_ARRAY(:name))`, {
name
})
getOne();
여기서 [*]를 쓰는게 신기했는데, 원래는 배열의 인덱스 번호가 들어갔다가 저렇게 별을 넣으니까 모든 배열을 기준으로 조회를 할 수 있더라
사실 쓰는 방법이 엄청 다양했는데, 내가 돌아가는 것이 확인했던 방법이 저거라서...일단 저렇게 쓰게 될 것 같다. 아마도?
그리고 prisma를 좀 봤는데...
걍 메소드가 있네?
ORM을 바꾸는게 쉬운 것이 아니라서 제안을 할 순 없지만 TypeORM 참(...) ㅠㅠ
이런저런 고민이 많은데 요즘은 노드에 대한 고민도 조금 생긴 것 같다
자바 공부를 좀 해보는게 좋을 것 같아서 여유가 조금 더 생기면 좀 둘러봐야겠다