일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
- 시스템설계면접예시
- react-ga
- git commit merge
- gitsquash
- 테스트코드책
- 시스템설계면접
- 가상면접3장
- 가상면접으로대규모시스템
- 전략패턴
- 리팩터링2판테스트
- awss3
- FirebaseAnalytics
- s3이미지다운로드됨
- 헤드퍼스트전략패턴
- file not found Error
- git squash
- formik react-query submitting not working
- 시스템설계방법
- 리액트구글애널리틱스
- formik submitting not working
- git commit 협업
- cypressBDD
- 시스템설계
- 리팩토링2판4장
- react
- cypress React
- 시스템설계면접팁
- Git commit 합치기
- 가상면접2장
- 디자인패턴
- Today
- Total
목록BackEnd (51)
mingg IT
스프링 로그 level을 info -> debug로 바꾸어야 할 일이 생겼다. logback-production.xml 혹은 logback-develop.xml파일을 수정해야하는데 여기서 filter관련 level과 root관련 중 뭘 수정해야하나 싶었다. 알아보니 filter 관련은 특정 레벨 이하 이벤트를 실행하지 않는다 이런 의미였고 root level을 수정해야 log level이 수정됬다. 즉 둘다 수정했다. %d{yyyy-MM-dd HH:mm:ss.SSS}[%-5level] : %msg%n DEBUG ${HD_HOME}/logs/hyperdata.log ${HD_HOME}/logs/hyperdata-%d{yyyy-MM-dd}.%i.txt 100MB [%-5level] %d{HH:mm:ss.SS..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/ckhqWv/btrcurrnaar/8agzseHwkWXEsEuRRRGYp1/img.png)
이슈를 해결하던 와중 JdbcTemplate.execute()에서 에러가 발생하여 bad SQL grammer exception을 내뱉었다. 원인은 orderBy 사용시 DDL문법 오류가 발생한것. 이슈를 해결하는 김에 오늘 jdbcTemplate에 대해 알아보려고 한다. Spring JDBC 사용과정은 1. DataSource를 설정한다. driverClassName(), url, username, password 를 설정한다. 2.이후 해당 DataSource를 Bean으로 등록한다. JdbcTemplate(DataSource) (Spring JDBC를 사용하려면 DB Connection의 정보가 담긴 DataSource를 Bean으로 등록해야함) 3. jdbcTemplate.execute (Stri..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/k5sAm/btrbEMD7tD5/K3di7fE5VDrXmuHxKOvYq1/img.png)
this.updatedAt = LocalDateTime.now() 와 같이 많이 DTO에서 많이 사용하는 부분을 EntityListeners를 사용하여 반복된 코딩을 하지 않을 수 있다. MyEntityListner.java package com.jps.bookmanager.domain; import java.time.LocalDateTime; import javax.persistence.PrePersist; import javax.persistence.PreUpdate; public class MyEntityListner { @PrePersist public void prePersist(Object o) { if(o instanceof Auditable) { ((Auditable) o).setCreat..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/btufJD/btraHrzQWql/e7L45TaPybz62iKmmDbqH0/img.png)
1. maven repository에서 Springfox를 검색한다. 2. Gradle에 있는 내용을 복사하고, build.gradle 파일에서 dependencies에 붙여넣는다. 3. 새로고침 한번 해주고 Spring을 구동한다. 4. http://localhost:8083/swagger-ui/ 를 주소창에 입력한다. 8083은 내 포트번호임 내가 만든 api를 볼 수 있을 것이다. 5. Execute를 누르면 결과를 확인해 볼 수 있다. 6. 초기 화면
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/4KUyB/btq91ppGGKB/PDHpwD2Ntc1EeZXhBSkVlK/img.png)
오늘 네이버 api를 사용하는 간단한 예제를 소개하려고 한다. https://developers.naver.com/docs/serviceapi/search/local/local.md#%EC%A7%80%EC%97%AD 지역 - Search API 지역 NAVER Developers - 검색 API 지역 검색 개발가이드 검색 > 지역 네이버 지역 서비스에 등록된 각 지역별 업체 및 상호 검색 결과를 출력해주는 REST API입니다. 비로그인 오픈 API이므로 GET으로 호출 developers.naver.com 우선 네이버 open API에 접속하여 header에 들어가는 필요한 키와 시크릿넘버를 받아야한다. Application -> 내 애플리케이션 -> 애플리케이션 등록으로 휴대폰 인증을 거친다음 키를 ..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/nHfhk/btq8Okbx2nU/kGkUWGBrR432mn51d0dpYK/img.png)
우리가 보통 스프링에서 dto를 만들어주고 get, set 메소드를 만든다. 허나 lombok을 사용하게 되면 이를 만들어 줄 필요가 없다. 1. Vs code 플러그인에서 lombok을 다운받는다. 2. build.grade에 dependencies에 추가한다. dependencies { ... compileOnly 'org.projectlombok:lombok:1.18.6' annotationProcessor 'org.projectlombok:lombok:1.18.6' ... } 3. dto에서 사용한다. @Data @NoArgsConstructor @AllArgsConstructor public class FilterUser { private String name; private int age; }..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/5vaeQ/btq8NvxCmOj/xmpMbSfxmWif0XFjON2dMK/img.png)
Web Application의 입장에서는 에러가 났을때 대처할 수 있는 방법 1. 에러 페이지 2. 400, 500대 Error 3. Client가 200 외에 처리를 ㅏ지 못 할 때는 200을 내려주고 별도의 에러 메세지를 전달 예외 처리 종류 @ControllerAdvice 특정 패키지/ 컨트롤러 예외 처리, Global 예외 처리 @ExceptionHandler 특정 Controller 의 예외 처리 @ExceptionHandler(value = MethodArgumentTypeMismatchException.class) public ResponseEntity methodArgumentTypeMismatchException(MethodArgumentTypeMismatchException e, Htt..
보호되어 있는 글입니다.