java 5

Log4j 라이브러리 보안 이슈(CVE-2021-44228). 영향 받는 버전 및 해결 방안

로그를 남기기 위한 라이브러리 가운데 Log4j라는 오픈 소스가 있다. 오픈 소스이면서도 로그 저장에 있어 유용한 기능들이 많아 JAVA 프로그래밍을 하는 대부분의 개발사에서 사용 중인 라이브러리인데, 이번에 문제가 조금 생겼다. 아니 좀 크게 생겼다. 문제가 된 것은 Log4j 라이브러리의 취약점(명령어를 실행시킬 수 있다는) 때문인데, 앞서 말했듯이 JAVA 프로그래밍된 대부분의 사이트 및 프로그램에서 Log4j를 사용 중이기 때문에 더 문제점이 크다고 볼 수 있다. 덧붙여 이 이슈가 문제가 되는 것은 서버에 로그인한 것 만으로 해커가 사용자의 컴퓨터를 사실상 원격 조종할 수 있는 것이기 때문이다. 단순히 원격 조종이라고 하면 실감이 안날 수도 있는데, 구체적으로 설명하자면 비밀번호도 없이 서버를 통..

개발/Java 2021.12.13

JAVA의 객체지향프로그래밍(OOP)에 대해 알아보자 - 추상화 편

지난 시간에는 객체지향 프로그래밍의 한 요소인 캡슐화에 대해 다뤄보았다. 이번 시간에는 객체지향 프로그래밍의 요소인 추상화에 대해 알아보고자 한다. 추상화란 말은 어려워 보이지만 실상 안으로 들어가 보면 생각하기에 따라 참 단순한 개념이라고 할 수 있다. 이번 포스팅에서는 최대한 이것을 알기 쉽게 설명해 보고자 한다. 첫 번째로 예를 들자면 강아지, 고양이, 양, 소 이렇게 4마리의 동물이 있다고 했을 때 이것들을 하나로 묶기 위한 공통의 카테고리를 뽑는다면 무엇으로 뽑겠는가? 필자라면 문제에 답이 있다고 동물이라는 카테고리로 강아지, 고양이, 양, 소를 묶을 것이다. 이렇게 동물이라는 카테고리로 묶는다고 하였을 때 동물이 추상 클래스(abstract), 그리고 강아지, 고양이, 양, 소가 동물이라는 추..

개발/Java 2019.11.14

JAVA의 객체지향프로그래밍(OOP)에 대해 알아보자 - 캡슐화 편

JAVA를 사용하여 개발하다 보면 반드시 알아야 하는 일부 개념들이 있다. OOP라는 개념이 그것인데, OOP란 객체지향 프로그래밍의 약자다. 그리고 이 객체지향 프로그래밍은 캡슐화, 상속, 추상화, 다형성을 통해서 이루어진다. 앞으로 이어지는 포스팅을 통해 해당 내용에 대해서 알아보는 시간을 보내고자 한다. 오늘은 캡슐화에 대해서 알아볼 것인데 거창한 것은 아니고, 실제 현장에서 어떻게 캡슐화가 이용되는지 아래 글을 통해 조금이라도 알고 가기를 원하는 마음으로 작성해 보고자 한다. 해당 글이 부디 도움이 되었으면 좋겠다. 캡슐화는 다음과 같은 내용으로 정의가 되고 있다. 데이터들(변수 : variable)과 그 데이터를 처리하는 코드(메서드 : method)들을 하나의 단위(Single Unit)로 묶..

개발/Java 2019.11.12

JAVA JDK 설치하기 2편[환경 변수 설정하기]

연관글 2019/09/22 - [Java 이야기] - JAVA JDK 설치하기 1편[JDK 다운로드 및 설치] JAVA JDK 설치하기 1편[JDK 다운로드 및 설치]에서 정상적으로 설치를 했다면 컴퓨터에 JDK 설치는 마쳤으리라 본다. 설마 다음만 클릭하면 되는데 그것을 못했다고 생각하고 싶지는 않다. 그러나 아무래도 이대로 사용하기에는 어려움이 조금 있다. 매번 설치된 경로에 들어가서 실행하기는 번거롭지 않겠는가? 이럴 때 사용되는 것이 지금부터 얘기할 환경변수라는 부분이다. 잘 아는 이들도 있고 모르는 이들도 있겠지만 우선 그냥 따라와 보도록 한다. 필자의 PC는 Windows10이므로 해당 PC 기준의 캡처 화면이나, 사실 Windows 7까지도 거의 비슷했던 것으로 기억한다. 우선 내 컴퓨터에서..

개발/Java 2019.09.23

JAVA JDK 설치하기 1편[JDK 다운로드 및 설치]

JAVA로 개발을 하거나 JAVA로 구성된 프로그램을 구동하기 위해서는 JAVA라는 언어를 읽을 수 있는 환경 구성이 필요하다. 아무것도 없는 상태에서 뭔가 읽을 수 있는 노릇은 아니지 않은가? JAVA는 현재 Oracle 사에서 인수를 해서 해당 환경 구성에 필요한 설치 프로그램들을 본인들의 사이트에서 제공을 하고 있다. [ORACLE 홈페이지] URL : https://www.oracle.com/ 여기서 진행은 아래와 같이 진행을 하면 된다. 1. Downloads에 마우스를 올리시면 많은 하위 메뉴가 나오는데 그중에서 왼편에 있는 JAVA for Developers로 진입 2. 여러 종류의 다운로드가 나오는데 일반 JAVA 개발이 목적이시라면 JDK를 Download 3, Download를 누르면 ..

개발/Java 2019.09.22