구글 stt 연동 예제를 살펴보다 try-with-resource 구문을 사용한 곳이 있어, try-with-resource에 대해서 공부하게 되었다. 잘 알고 있는 try-catch-finally 구문의 경우에는 아래의 예시 처럼 finally에서 사용한 자원을 직접 close를 시켜주어야한다. Scanner scanner = null; try { scanner = new Scanner(new File("test.txt")); while (scanner.hasNext()) { System.out.println(scanner.nextLine()); } } catch (FileNotFoundException e) { e.printStackTrace(); } finally { if (scanner != nu..
람다 표현식은 단일 추상 메서드 인터페이스를 구현하는 데 적합한데, 익명 내부 클래스를 람다식으로 변경 하기 위해서는 단 하나의 추상 메서드만을 가지고 있어야한다. 1. 익명 내부 클래스 방식 list.sort(new Comparator() { @Override public int compare(Player o1, Player o2) { return o2.height()-o1.height(); } }); 2. 람다 표현식 list.sort((o1, o2) -> o2.height()-o1.height());
한 친구가 데이터베이스에 값이 존재하는지 여부를 찾기 위해 queryDsl로 count 함수를 직접 구현하기에 다른 방법이 없는지 찾아보았다. Spring Data JPA 에서는 existsById 라는 것을 제공한다. 갓jpa.. package com.example.springsecurity; import com.example.springsecurity.repository.member.MemberRepository; import org.junit.jupiter.api.Assertions; import org.junit.jupiter.api.Test; import org.springframework.beans.factory.annotation.Autowired; import org.springframew..
프로젝트 외부에 저장된 이미지를 사용하고자 할 때는 WebMvcConfigurer 인터페이스를 구현하여 설정을 할 수 있으며, addResourceHandlers 메서드를 오버라이드하여 정적 리소스를 웹 애플리케이션에서 제공할 수 있도록 핸들러를 추가한다. addResourceHandlers 메서드는 다음과 같이 설명이 되어있다. "정적 리소스(이미지, JS 및 CSS 파일 등)를 웹 애플리케이션에서 제공하기 위해 핸들러를 추가하려면, 웹 애플리케이션 루트의 특정 위치, 클래스 패스 및 기타 위치에 해당하는 정적 리소스 경로를 등록하십시오." 예제 package com.injeong.hompage.config; import org.springframework.context.annotation.Config..
톰캣 기본 설정은 디렉토리 구조가 보이지 않게 설정되어있다. 이를 보여지게 설정 할 수 있는데, 보안취약점임으로 주의를 해야한다. ▶️ 설정방법 - tomcat경로/conf/web.xml의 listings 부분을 수정하여 변경 할 수 있다. vi 톰캣경로/conf/web.xml vi로 파일을 연 후 /를 누르면 겸색을 할 수 있는데 이 때 listing을 검색해보면 아래와 같은 부분을 찾을 수 있다. 에 관련 내용이 설정 되어있는데, 기본적으로 listings는 false(param-value 확인)이다. 만약, 디렉토리 구조를 웹에서 확인 하고 싶으면 param-value를 true로 두고, server를 재시작해주면 된다. default org.apache.catalina.servlets.Defaul..
tomcat의 webapps 하위에 war 파일을 넣고 배포를 하게 되는 경우 톰캣은 기본적으로 압축을 풀고 contextPath를 폴더명으로 지정한다. 예) test.war 배포 시 contetxtPath는 test로 해당 프로젝트에 접근하고 싶으면 localhost:8080/test로 접근해야한다. 만약 위의 상황에서 단순히 localhost:8080으로 접속을 하게 된다면 404 not found가 떨어지게 되고, 에러 페이지 설정을 하지 않았다면 tomcat의 기본 에러페이지가 나와 tomcat의 버전이 노출되므로 이는, 보안 위반 사항이다. 그렇다면 localhost:8080으로 접속을해도 자동으로 localhost:8080/test로 리다이렉트 시키고 싶으면 어떻게 해야할까? 단순히 설정 ..
쿠버네티스 실습을 위해 가상서버 3개를 만드는데, 3개 모두 같은 아이피가 할당되는 곤란한 상황이 발생했다. 따라서 나머지 2대의 아이피를 변경해주어야했다. ip는 /etc/netplan/00-installer-config.yaml 파일을 수정해서 변경 할 수 있다. 1️⃣ NIC 와 Gateway 정보 확인 -Gateway : 192.168.64.1 - NIC : enp0s6 2️⃣ IP 변경하기 sudo vi /etc/netplan/00-installer-config.yaml 위와 같은 내용을 아래처럼 변경해주면 된다. network: ethernets: enp0s6: #route -n으로 확인한 NIC addresses: [192.168.64.11/24] #지정할 ip gateway4: 192.16..
offset 을 리셋하면 데이터를 처음부터 다시 읽을 수 있다. 1️⃣ consumer-group 상세보기 kafka-consumer-groups.sh --bootstrap-server localhost:9092 --describe --group consumer-group LOG-END-OFFSET을 보면, 마지막으로 읽은 offset을 확인 할 수 있다. 2️⃣ offset 리셋하기 - reset시에는 모든 consumer group이 비활성화 상태여야한다. 아니면 아래와 같은 에러가 난다. `Assignments can only be reset if the group consumer-group is inactive, but the current state is Stable` kafka-consumer..
- Total
- Today
- Yesterday
- Linux
- 현대오토에버
- 아파치카프카
- Docker
- softeer
- centos
- 현대코테
- Spring
- tomcat
- mysql
- java
- 코테
- Kubernetes
- 현대
- java 코테
- springboot
- react
- 톰캣
- softeer java
- 오토에버코테
- 자바
- javascript
- 도커
- 자바코테
- 리액트
- 자바스크립트
- 코딩테스트
- 스프링
- 전자정부프레임워크
- 쿠버네티스
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 29 | 30 |