본문 바로가기

전체 글

Express.js에서 전역으로 error 처리시.. 딱 3줄만 추가하면 되는 건데... 한시간 가량을 보내버렸다. app.use(function(error, req, res, next) { res.json({ message: '에러네?????!' }); }); 저 3줄을 app.js에 추가하면서 생각없이 특정위치에 넣어버렸는데.. 계속 왜 안될까..만... 그러다..앗!!! 맞다!! 지난번에도 이거 비슷한거.. app.use가 어느 위치에 놓이느냐에 따라서...끙... 해서, app.js 맨 마지막에 추가해 넣으니 잘되네!!! 아.. 이세계는 다른세계 느낌이야.. 더보기
json object 상호 변환시 lombok으로 인한 boolean 기본형 오류 오늘 옆 동료분이 restful 관련 json 변환시 boolean에 속성의 한 필드가 이럴경우 저럴경우 오류가 생기고 안생긴다고 한다. 대충 보니 이름 문제같은 느낌적인 느낌이 들고, 마침 다른 동료도 해당 이슈에 대해 처리했던 경험을 얘기해 줘서 한번 보기로 함. 자 lombok의 @Data 로 생성된 boolean 을 보자. property를 isResult로 했지만 Lombok에 의해 생성된 메소드는 isResult, setResult이다. 그럼 그냥 result로 한다면?... 똑같다. 흠.. 이상도 하지.. 그럼 Boolean 타입이라면? 어어... get/set이 is앞에 붙어버린다. is가 없는 경우도 당연히~ 즉, @Data를 쓸경우 의도와는 다르게 처리될 수 있기 때문에 꼭 네이밍을 확.. 더보기
Redis(Lettuce) 캐시 적용시 expire time(ttl) 지정 @Cacheable에는 왜 expires 속성이 없는 것일까..를 늘~ 고민하면서. 기존에는 이렇게 CacheManager를 따로 생성하는 코드를 만들거나 보았더랬다.. @Bean("이건10분짜리야") public CacheManager redisCacheManager10() { ... } @Bean("이건60분짜리야") public CacheManager redisCacheManager60() { ... } 참 이상도 하지.. 그냥 기존에 저런 코드가 있으면 다음에 100분짜리가 생겨야 하면 그냥 C&P를 해버린다..읔.. 이번에는 좀 바꾸어 보았다. CacheConfigurationProperties에 cache key와 value(ttl)를 Map으로 지정해 준다. // DEV profiles pu.. 더보기
Spring Boot2 ddl-auto 적용 안됨 다중 Datasource의 문제인지... 이로인해 ddl-auto가 적용이 안된것이 아닌가 싶기는 한데.. spring: jpa: hibernate: ddl-auto: update show-sql: true 해서 properties로 설정. spring: jpa: show-sql: true properties: hibernate.hbm2ddl.auto: update ... 문제는 해결됨. 더보기
JPA QueryDsl이나 기타 Generate SRC 를 사용하는 경우. - Gradle java.lang.IllegalStateException: endPosTable already set 가끔 저 오류를 볼 수 있는데.. 대체적으로 아마 generatesrc 로 인한 문제라고 생각한다. 즉, generatesrc가 기존에 source path로 등록되어 있는데 제대로 clean이 안된 상태에서 다시 source path를 만들어 등록하려고 해서 내뱉는 오류. 즉, 빌드 전 해당 generated source path를 지우면 된다. clean을 이용하는 경우 clean.doLast { file(querydslGenratedSrc).deleteDir() } task를 이용하는 경우 def querydslGenratedSrc = 'src/main/generated' task deleteGen.. 더보기