socket 통신을 통해 STT를 붙여야 하는 경우가 생겼다. 이전에도 여러번 socket으로 데이터를 주고 받은 적이 있기 때문에, 이 정도는 아무것도 아니지ㅋ 생각했는데, 업체로부터 제대로된 연동정의서가 아닌 C# 샘플 코드를 받았다. 흠 C#은 모르는데...?다행히 샘플 코드가 어렵지 않아 Java로 포팅하면서, 제대로 했다고 생각했는데....계속 잘못된 결과를 받았다. 그치..한번에 잘 될 일이 없지..ㅎ 그치만 아무리 봐도 뭐가 잘못인지 모르겠다.. 업체에 문의해봐도, 본인들도 그 결과는 처음본다고... 네..? 나에게 도움이 되는 답변은 아니었다.그래서 수석님에게 도움을 요청하니, 코드의 문제는 아닌거 같고, 엔디안 문제 아니냐는 힌트를 주셨다. 엔디안이요? 와 완전 처음 들어보는 말..엉엉..
Null의 문제점Java에서 null은 매우 오랜 시간 동안 객체가 없음을 나타내는 대표적인 방법이었다. 하지만 이 null이 시스템 전반에 걸쳐 여러 문제를 일으킬 수 있다. 1. NullPointerException (NPE)프로그램에서 객체가 null인 상태에서 그 객체에 접근하려 할 때, NPE가 발생하며 이는 개발자들이 자주 마주하는 에러 중에 하나이다.String name = null;System.out.println(name.length()); // NullPointerException 발생 2. 코드 가독성 저하null 처리를 위해 코드 전반에 if문을 사용해야하며 가독성이 떨어진다.if (user != null && user.getName() != null) { System.out..
객체지향 프로그래밍의 기본 원칙은 캡슐화(encapsulation), 상속(inheritance), 다형성(polymorphism)이며, 이들은 소프트웨어를 보다 모듈화하고 유지보수하기 쉽게 한다. 캡슐화(Encapsulation): 캡슐화는 관련된 데이터와 메서드를 하나의 단위로 묶는 것 클래스는 데이터(속성)와 해당 데이터를 다루는 메서드(함수)를 함께 캡슐화하여 객체를 형성 캡슐화는 정보 은닉(Information Hiding)을 통해 객체의 내부 구현을 외부로부터 숨기고, 외부에서는 객체의 인터페이스를 통해 상호작용한다. 상속(Inheritance): 상속은 기존의 클래스에서 정의된 속성과 메서드를 새로운 클래스에서 재사용할 수 있도록 하는 개념 상속을 통해 코드 중복을 줄이고, 기존 클래스의 기..
코테를 공부한지 얼마 되지 않아..이 문제도 어렵게 느껴졌는데 정답률이 70%가 넘어가는 문제이다. 결국 강의를 참고 해서 풀었다. 코테는 다양한 문제에 대해서 경험해보는게 중요하다고 하는데...정말 그런것 같다. 1️⃣ 문제 현대차그룹에 다니는 당신은 전세계 유가 변동에 대해 실시간으로 파악하기 위해 사무실에 유가를 실시간으로 표시하는 전광판을 설치하였다. 전광판은 최대 다섯 자리의 자연수만을 표시할 수 있도록, 아래와 같이 육각형 모양의 전구 7×5=35개로 구성되어 있다. 8자 모양의 전구 묶음은 0부터 9까지의 숫자를 표현할 수 있으며, 표현 방법은 아래와 같다. 아래 그림에서 전구가 켜졌으면 검정색, 꺼졌으면 옅은 회색으로 표현되었다. 예를 들어, 전광판을 통해 9881를 표현하면 아래와 같다...
람다 표현식은 단일 추상 메서드 인터페이스를 구현하는 데 적합한데, 익명 내부 클래스를 람다식으로 변경 하기 위해서는 단 하나의 추상 메서드만을 가지고 있어야한다. 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());
🔎상황 동일한 프로그램이 올라가는 세대의 서버가 있고, 이 세대의 서버는 각각 개별적으로 존재하고 L4로 묶여있지 않다. 어떤 서버에 요청을 해도 동일한 응답값이 오기 때문에 원하는 응답값을 얻기 위해서는 단 하나의 서버에만 요청을 해도 된다. 그러나, 이런 경우 서버가 죽었을 경우 로드밸런싱이 되지 않기 때문에 하나의 서버에 요청 후 TIMEOUT이 떨어지면 다른 서버에 요청을 해야한다. 서버 요청 시간제한을 2초로 놓는다고 해도 운이 좋지 않으면 6초나 걸리는 상황이다. 그래서, 비동기통신을 고려해봤다. 🔎 코드 ExecutorService는 JDK API로 작업을 비동기 모드로 실행 할 수 있다. ExcutorService는 쓰레드 풀을 자동으로 제공한다. public Map requestInfor..
🔧 환경 - java 1.8 - spring - jsp - javascript - sweetalert 🔎 요구사항 - 사용자의 마지막 동작으로 부터 1시간이 지나면 세션을 만료하되, 만료되기 1분전에 세션 만료 알림을 띄어 연장할 수 있어야 한다. 🔎 idea - server에 filter를 등록하여 요청이 올 때마다 response에 마지막 요청시간을 cookie를 저장하고, front단에서는 cookie를 1초마다 확인하여 세션 만료 1시간 전 알림을 보내준다. - 세션 만료 시간 = 마지막 요청 시간 + 1시간 📌 구현 💻 server 1. web.xml 설정 - web.xml에 기본 세션 만료 시간을 설정한다. - web.xml에 설정한 timeout의 단위는 '분' 이다. 60 2. filter..
- Total
- Today
- Yesterday
- 오토에버코테
- Docker
- 자바
- 리액트
- springboot
- Linux
- react
- 현대코테
- 코딩테스트
- 도커
- 스프링
- softeer
- java 코테
- Kubernetes
- Spring
- 전자정부프레임워크
- 코테
- centos
- 자바스크립트
- java
- javascript
- 현대오토에버
- 쿠버네티스
- 아파치카프카
- tomcat
- softeer java
- 자바코테
- 현대
- 톰캣
- mysql
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |