반응형
127.0.0.1 - - [06/Jun/2022:20:25:24 +0900] "GET /users HTTP/1.1" 200 8363 127.0.0.1 - - [06/Jun/2022:20:25:30 +0900] "POST /users HTTP/1.1" 200 8363 127.0.0.1 - - [06/Jun/2022:20:53:39 +0900] "PUT /users HTTP/1.1" 500 15105 127.0.0.1 - - [06/Jun/2022:20:53:52 +0900] "POST /users HTTP/1.1" 500 8363 ... [root@nas ~]# cat /data/logs/localhost_access_log.2022-06-07.txt localhost_access_log 파일을 cat 하..
null처리에 대해서 맘에 드는 글이 없어서 직접 정리하게 되었음 프로젝트를 시작할 때 @NonNullApi를 패키지 레벨에 선언해놓자. @NonNullApi package kr.webgori.lolien.api; 패키지에 package-info.java 파일을 만들고, @NonNullApi 애너테이션을 선언하면 패키지 하위의 class method의 인자 또는 리턴이 null일 경우 IDE에서 Warning으로 알려준다. 기본으로 null을 쓰지 말자 /** * 이렇게 사용하지 마시고. */ private void wrongWay() { User user = null; } /** * 이렇게 사용하세요. */ private void correctWay() { User user = new User(); }..
인증서가 필요한 이유 웹 사이트 이용자가 웹 사이트를 안전하게 이용할 수 있도록 하기 위해 인증서가 필요함 웹 사이트에 인증서를 적용하면 안전해지는 이유 웹 브라우저가 서버에게 데이터를 전달할 때 데이터를 암호화 해서 주고, 서버에서도 데이터를 암호화 해서 웹 브라우저에 주기 때문에 중간에서 데이터를 탈취하려는 자로부터 데이터를 보호할 수 있음 인증서 파일 구성 방식 cert.pem: 서버 인증서 chain.pem: 웹 브라우저가 서버 인증서의 유효성을 검사하기 위해 필요한 추가 중간 인증서 또는 인증서들. fullchain.pem: 서버 인증서(일명 리프 인증서 또는 엔드 엔티티 인증서)를 포함한 모든 인증서. 서버 인증서는 이 파일에서 첫 번째 인증서이며 그 뒤에 모든 중간 인증서가 있습니다. cer..
root@nas:~# /usr/local/tomcat/bin/catalina.sh stop Using CATALINA_BASE: /usr/local/tomcat Using CATALINA_HOME: /usr/local/tomcat Using CATALINA_TMPDIR: /usr/local/tomcat/temp Using JRE_HOME: /usr Using CLASSPATH: /usr/local/tomcat/bin/bootstrap.jar:/usr/local/tomcat/bin/tomcat-juli.jar NOTE: Picked up JDK_JAVA_OPTIONS: --add-opens=java.base/java.lang=ALL-UNNAMED --add-opens=java.base/java.io=ALL..
서버의 상태를 확인하려면 Health Check를 사용하면 된다. 설명은 Spring Boot 2.0.9.RELEASE 기준이다. implementation('org.springframework.boot:spring-boot-starter-actuator') Health Check 기능은 spring-boot-starter-actuator 라이브러리의 기능 중 하나이므로 사용하려면 actuator 라이브러리를 추가해야한다. spring-boot-starter-actuator 라이브러리는 Spring Boot 버전과 동일한 버전을 사용해야 한다. management: endpoints: web: base-path: /application path-mapping: health: healthcheck endp..
1. 개요 라이브러리가 OpenAPI 3.0 스펙에 맞는 JSON을 자동으로 만들어 주면, Swagger UI는 만들어진 JSON을 바탕으로 화면에 표시 해줍니다. Spring Boot 2.0.9.RELEASE로 테스트 하였습니다. 2. 문제 해결 messageconverter가 설정되어 있어서 Swagger UI가 /v3/api-docs/ end-point로 접근시 String으로 감싼 JSON 형으로 리턴됨. HttpServletRequest 객체의 getRequestURI 메소드를 사용하여 요청한 Uri를 가져옴. Uri가 /v3/api-docs/ 또는 /v3/api-docs/swagger-config 인지 확인하여 원본 내용을 리턴하게 예외처리. (e.g. json이면 json으로) 3. buil..