본문 바로가기

전체 글691

728x90
반응형
[Git] "Merge branch 'master' of"가 Push 하면 자동으로 생기는게 싫다면 Push 하면 "Merge branch 'master' of"가 자동으로 생기는 경우가 있을 것이다. 이는 local branch에 변경점이 있고 local branch에 반영되지 않은 변경점이 remote branch에도 있는 경우 Pull 하고 Push를 하면 자동으로 Merge가 수행되어 발생한다. 이런 것이 싫다면 해결 방법이 여러가지가 있겠지만 Pull할 때 rebase 옵션을 true로 설정하면 예방이 가능하다. 단, Git 미숙련자라면 rebase를 true로 설정하지 않는 것을 추천한다. rebase 옵션 값을 수정하는 방법은 여러가지가 있겠지만 이클립스(Eclipse)에서 수정하는 방법은 'Prefereces' - 'Team' - 'Git' - 'Configuration' - 'Syste.. 2022. 9. 1.
[Java] 표준 출력 사용하기 println(), print(), printf() 동영상 설명 2강. 'System out' 표준 출력으로 문자를 출력하자 개요 자바(Java)에는 표준 출력을 할 수 있는 메서드로 println()과 print(), printf()가 있다. 이 메서드는 System.out 클래스에 있다. 사용 방법은 다음과 같다. 예제 자료: https://github.com/EngineeringCode/study-java/blob/main/src/com/hcpark1993/example/io/SystemOutPrintExample.java println() 사용법 println()은 입력된 값에 개행문자가 함께 출력되는 메서드이다. System.out.println("문자열"); System.out.println("문자열"+"문자열"+변수); System.out.p.. 2022. 8. 31.
[윈도우 11 홈] '로컬 사용자 및 그룹' 대신에 사용할 수 있는 도구 윈도우 11 홈(Windows 11 Home)에는 '로컬 사용자 및 그룹' 도구를 사용할 수 없다. 윈도우 11 홈에서 '로컬 사용자 및 그룹' 도구를 실행하면 다음과 같은 문구가 나타난다. "이 컴퓨터는 Windows 11 Home을(를) 실행하고 있습니다. 이 스냅인은 이 버전의 Windows 10에 사용할 수 없습니다. 이 컴퓨터의 사용자 계정을 관리하려면 제어판의 [사용자 계정] 도구를 사용하십시오." 윈도우 11 홈 라이센스에서는 '로컬 사용자 및 그룹' 프로그램을 사용할 수 없다. 하지만 그 대안으로 유사한 기능을 제공하는 별도의 프로그램을 사용하는 방법이 있다. 무료로 사용할 수 있으며 아래의 주소에서 다운로드할 수 있다. 다운로드 주소: https://github.com/proviq/Acc.. 2022. 8. 29.
자료구조란 무엇이며 왜 알아야 하는가? 자료구조 정의 컴퓨터에서 자료구조(Data Structure)는 자료를 효율적으로 보관하고 연산하기(다루기) 위한 방법을 다루는 학문이자 기술이다. 대표적인 자료구조 대표적인 자료구조는 아래와 같다. 큐(Queue) 스택(Stack) 힙(Heap) 링크드 리스트(Linked List) 트리(Tree) 그래프(Graph) 자료구조를 알아야 하는 이유 공학은 문제를 해결하는 최적의 방법을 찾고자 끊임 없이 연구하는 분야이다. 자료구조는 이러한 컴퓨터 문제를 효율적으로 해결하기 위해 자주 사용하는 방법을 정리한 학문이자 기술이며 자료구조를 알아야 빠른 시간 내에 문제를 해결할 수 있다. 자료구조를 문제 해결에 잘 적용할 수 있는 개발자(연구자)를 우수한 개발자라고 한다. 이러한 우수한 개발자를 구하기 위해 기.. 2022. 8. 23.
[CentOS 7] SMTP 서버(SendMail) 설치하기 SMTP 서버의 필요성 운영 중인 서비스에서 메일 발송이 필요하다면 온라인에서 제공되는 SMTP(Simple Mail Transfer Protocol) 서비스를 이용해도 되지만 때로는 자체적으로 SMTP 서비스를 구축할 필요가 있다. 본 글에서는 SMTP 서버(Server) 설치를 통해 SMTP 서비스를 구축하는 방법을 소개한다. SendMail 설치 아래의 명령어를 입력하여 SendMail과 설정 관련 패키지를 설치한다. yum install sendmail sendmail-cf m4 아래의 명령어를 입력하여 어떤 버전이 잘 설치되었는지 확인한다. sendmail -d | grep -i Version SendMail 설정 아래의 명령어를 입력하여 Sendmail 설정 파일을 텍스트 에디터로 연다. vi.. 2022. 8. 23.
제6회 삼성 보안 기술 포럼 시청 중입니다. 2022년 8월 23일 화요일 10시부터 15시까지 진행되는 제6회 삼성 보안 기술 포럼을 시청 중입니다. 여러 주제를 이렇게 한 날에 발표하니 한 번에 볼 수 있어서 좋습니다. 휴식 시간에 즐길 수 있는 게임도 있습니다. 2022. 8. 23.
Git에서 "SSL certificate problem: self signed certificate" 해결 방법 사설 SSL(Secure Sockets Layer) 인증서로 HTTPS(Hypertext Transfer Protocol Secure) 통신을 하고 있다면 아래의 사진처럼 "SSL certificate problem: self signed certificate" 라는 문구로 Git이 통신을 거부할 수 있다. 이 경우 사설 SSL 인증서도 통신에 사용할 수 있도록 설정하면 해결할 수 있다. 윈도우 환경을 이용 중이라면 아래의 사진처럼 Git Bash를 켜고 리눅스라면 터미널에 접속한다. 아래의 명령어를 입력하여 HTTPS 인증서 유효성 검사를 비활성화하는 옵션을 전역(Global)으로 선언한다. git config --global http.sslVerify false 2022. 8. 22.
[CentOS 7] Fail2Ban에서 SSH 정책 설정하기 Fail2Ban 정책을 조정해야하는 이유 무작위 대입 공격(Brute foce, 브루트포스)은 가장 단순하고 시간이 오래걸리지만 시간만 있다면 언젠가는 해킹이 가능한 것이 특징이다. 그런 관점에서 무작위 대입 공격에 필요한 비용을 최대한 올리는 것이 중요하다. 지난 글에서는 CentOS에서 Fail2Ban을 설치하는 방법을 다루었고 기본 정책만으로는 무작위 대입 공격을 방어하기에는 부족하기 때문에 Fail2Ban 정책을 손보는 것이 좋다. Fail2Ban 정책 설정 아래의 명령어를 입력하여 Fail2Ban 정책 파일을 수정한다. vi /etc/fail2ban/jail.conf 아래의 사진처럼 각종 설정 화면이 나타날텐데 SSH에 적용할 것이고 로그인 관련 시도 허용 횟수와 밴 시간을 적절하게 조절한다. .. 2022. 8. 22.
VMWare에서 크롬 브라우저의 화면이 깨질 때 해결하는 방법 문제 증상 아래의 사진처럼 VMWare에서 크롬(Chrome) 브라우저의 화면이 깨질 때 해결하는 방법은 하드웨어 가속 사용을 해제하는 것이다. 해결 방법 아래의 주소로 이동하여 아래의 사진처럼 '가능한 경우 하드웨어 가속 사용'을 비활성화하고 브라우저를 다시 시작한다. chrome://settings/system 2022. 8. 22.
[Spring/MyBatis] Null 값 허용하기 문제 정의 및 현상 MyBatis를 활용해서 개발을 하다보면 SQL(Structured Query Language) 실행 중에 아래와 같은 문구를 만날 때가 있다. 원인은 여러가지가 있겠지만 그 원인 중 하나가 SQL 내의 변수값에 NULL이 있는 경우를 본 글에서는 살펴본다. JDBC-590704:Unsupported SQL type. 위와 같은 문구가 발생하는 경우 사용하는 SQL 내 변수 값 중에 NULL이 있는지 확인해서 NULL이 있는데 아래와 같은 문구가 발생하면 본 글의 해결방법으로 해결이 가능할 확률이 높다. 전역으로 NULL 값 허용 SQL 변수 값에 NULL이 허용되도록 MyBatis 설정을 전역적(Global)으로 설정하는 방법은 아래의 문구를 MyBatis 설정에 입력하는 것이다. .. 2022. 8. 22.
이클립스 Git 플러그인으로 GitHub에 로그인 하는 방법 GitHub 정책이 바뀌어서 GitHub 웹사이트 로그인 계정의 아이디와 비밀번호로는 GitHub에 접속할 수 없다. 정책이 바뀌기 전처럼 이클립스 Git 플러그인으로 로그인하려고 하면 분명히 아이디와 비밀번호를 제대로 입력했는데도 아래의 사진과 같은 창이 계속 나타난다. 해결하는 방법은 다음과 같다. 1. 로그인용 토큰 생성 비밀번호 대신에 사용할 토큰(Token)을 만들어야 한다. GitHub 홈페이지에서 'Setting' - 'Developer settings' - 'Personal access tokens' 페이지로 이동한다. 'Personal access tokens' 페이지로 가면 'Generate new token'이라는 버튼이 있는데 클릭한다. 토큰을 구분할 때 쓸 비고(Note)와 유효기.. 2022. 8. 19.
[넥사크로14] 서비스 추가 방법 자바의 패키지명처럼 화면을 구분하는 단위를 넥사크로에서는 서비스라고 한다. 넥사크로에서 서비스를 추가하는 방법은 2가지가 있으며 프로젝트 서비스 파일을 텍스트 에디터로 직접 열어서 수정하는 방법과 GUI(Graphical User Interface)를 활용해서 서비스를 추가하는 방법이 있다. 1. 텍스트 에디터로 서비스 추가 먼저 넥사크로 스튜디오를 닫는다. 넥사크로 프로젝트 루트 경로에 가면 'default_typedef.xml'가 있다. 이 파일을 텍스트 에디터로 'Services' 요소(Element)를 아래의 사진처럼 찾고 적절하게 'Service' 요소를 생성하고 저장한다. 2. GUI로 서비스 추가 'Project Explorer'에서 프로젝트의 'TypeDefinition'을 더블클릭하면 '.. 2022. 8. 19.
[넥사크로 14] 내장 웹 브라우저에서 글자가 깨지는 경우 넥사크로 기반 기존 프로젝트를 활용해서 신규 프로젝트를 개발 중인데 내장 웹 브라우저에서 글자가 깨지는 경우를 발견했다. 크롬 등의 다른 웹 브라우저로 확인하면 글자가 깨지지 않았는데 확인해보니 font 관련 문법 오류가 있어서 발생하는 문제였다. (타업체에서 오래 전부터 사용한 라이브러리를 제공 받은거라 CSS 문법 오류는 없겠지 싶었는데 오산이었다) 넥사크로 개발자 가이드의 CSS 문법 문서를 참고해서 아래처럼 설정하니 내장 웹 브라우저는 물론 외부 웹 브라우저(크롬 등)에서도 잘 동작했다. font:bold antialias,11,Malgun Gothic; 참고문서 [1] "7.2.4 CSS Class의 적용", 넥사크로플랫폼 14 개발자 가이드 14.0.1.3900, 투비소프트. @원문보기 2022. 8. 19.
오즈 쿼리 디자이너로 티베로 6에 연결하기 오즈 쿼리 디자이너에는 기본적으로 데이터베이스 벤더 이름에 'tibero'와 'tibero5'가 있다. 하지만 이를 활용해서 티베로에 접속하려고 하면 접속이 되지 않는다. 그 이유는 티베로(Tibero) JDBC가 오즈 쿼리 디자이너에 내장되어 있지 않기 때문이다. 그러므로 오즈 쿼리 디자이너로 티베로6에 연결하고 싶다면 티베로 JDBC를 오즈 쿼리 디자이너에 인식시켜야 한다. 방법은 다음과 같다. 1. 오즈 쿼리 디자이너 라이브러리 폴더에 티베로 JDBC 넣기 아래의 사진처럼 티베로6 JDBC를 오즈 쿼리 디자이너 설치 경로의 'lib' 폴더에 넣는다. 필자의 경우 경로가 'C:\Program Files (x86)\FORCS\OZ Report 8.0\OZ Query Designer 8.0\lib' 였다.. 2022. 8. 18.
VMWare 에서 Edge 브라우저의 화면이 깨질 때 해결하는 방법 문제 증상 아래의 사진처럼 VMWare의 가상화 환경에서 Edge(이하 엣지) 브라우저(Browser)를 사용하면 화면이 깨져보일 때가 있다. 이를 해결하기 위한 가장 쉬운 방법은 하드웨어 가속을 해제하는 것이다. 하드웨어 가속 비활성화 방법 하드웨어 가속을 해제하기 위해 아래의 주소를 엣지 브라우저의 주소창에 입력한다. edge://settings/system 아래의 사진처럼 시스템 설정이 나타날텐데 '가능한 경우 하드웨어 가속 사용'을 클릭하여 비활성화한다. 브라우저를 재시작하면 아래의 사진처럼 정상적으로 GUI가 나타나는 것을 확인할 수 있다. 2022. 8. 17.
Visual Studio Code를 Node.js의 통합개발환경(IDE)로 쓰자 Node.js를 편리하게 개발하기 위해서는 통합개발환경(Integrated Development Environment, IDE)을 구성하는 것이 필요하다. 통합개발환경으로 내가 추천하는 것은 Visual Studio Code이다. 무료로 사용가능하며 풍부한 확장 도구가 있어서 사용하기가 편리하기 때문이다. Node.js 통합개발환경을 Visual Studio Code로 구성하는 방법은 아래와 같다. 동영상 설명 2강. Visual Studio Code를 Node.js의 통합개발환경(IDE)으로 구성하자 1. Visual Studio Code 다운로드 아래의 주소로 가서 Visual Studio Code를 아래의 사진에 나타난 박스를 클릭하여 다운로드 한다. Visual Studio Code 다운로드 주소.. 2022. 8. 16.
RWIS(Road Weather Information System, 도로기상정보체계) 소개 RWIS 정의 RWIS(Road Weather Information System, 도로기상정보체계, 도로기상정보시스템)는 강수량 등의 기상정보와 대기 및 도로면 상태를 실시간 수집하는 시스템 RWIS 의의 국토의 70% 이상이 산지로 구성된 우리나라의 지형적인 특징으로 인해 도로의 대규모 비탈면, 고성토부, 교량 등의 구조물 관리소요가 계속해서 늘어나고 있고 이 구조물이 자연재해로 인하여 손상되어 인명 및 재산 피해가 발생할 가능성이 커지고 있다. 특히 지구 온난화 등의 이유로 우리나라는 국지성 호우와 기습적인 폭설이 더 자주 발생하는 상황이다. 이러한 피해를 예방하고 최소화하는 시스템을 구축하기 위해서는 도로의 기상을 실시간으로 수집하는 시스템인 RWIS가 필요하다. 참고문서 [1] "도로기상 정보의 .. 2022. 8. 12.
이클립스에서 톰캣(Tomcat)이 IPv4 주소만 사용하도록 설정 톰캣이 IPv4 주소만 사용하도록 설정하는 이유 가장 많이 사용되는 네트워크 주소체계로 IP(Internet Protocol)을 흔히 말한다. IP 주소에는 IPv4와 IPv6라는 두 가지 버전의 주소체계가 있는데 톰캣(Tomcat)의 경우 둘 다 지원한다. 하지만 이미 개발되어 있는 응용 프로그램이 IPv4만 지원한다면 톰캣이 IPv4 주소만 사용하도록 강제할 필요가 있다. 그렇지 않으면 주소 길이 등의 문제로 해당 응용 프로그램이 온갖 오류가 발생할 것이고 정상적인 동작을 수행할 수 없을 것이다. 톰캣이 IPv4 주소만 사용하도록 설정하는 방법 톰캣을 실행할 때 옵션으로 아래의 내용을 입력하면 된다. 본 글에서는 이클립스(Eclipse) IDE(Integrated Development Environm.. 2022. 8. 12.
[CentOS] 프로세스가 사용 중인 포트 확인 포트(Port)가 이미 점유되어 있어서 사용하지 못 하는 경우 어떤 프로세스가 해당 포트를 사용하고 있는지 확인하는 것이 필요하다. 아래의 명령어를 입력하면 현재 사용 중인 포트와 프로세스 정보가 나타난다. netstat -tulpn | grep LISTEN 2022. 8. 12.
이클립스에서 'Project Facets'를 강제로 지정하는 방법 이클립스(Eclipse)에서는 아래의 사진처럼 간혹 공식적으로 지원하는 버전이 제한되서 'Project Facets'를 GUI에서 설정하지 못 하는 경우가 있다. 하지만 특정 환경에서 개발을 해야한다면 강제로 설정할 필요가 있다. 그런 경우 아래의 사진처럼 프로젝트 폴더에서 '.settings'라는 폴더로 이동하여 'org.eclipse.wst.common.project.facet.core.xml'을 텍스트 에디터로 열어서 수정하면 된다. 텍스트 에디터로 facet 파일을 열면 아래의 사진처럼 설정들이 나온다. 수정하기 전에 꼭 이클립스를 종료하여야 한다. 2022. 8. 11.