목록분류 전체보기 (315)
삶 가운데 남긴 기록 AACII.TISTORY.COM
마이크로스프트에서 개인 활동 기록 정보를 수집하고 있습니다. 싫으시면 아래와 같이 조치 하십시오. Windows 10 개인 활동 기록 수집 안하기 절차 1. 작업 표시줄 돋보기 클릭 2. 검색창: 작업 기록 개인 정보 설정 3. Windows에서 이 PC의 내 활동을 수집하도록 허용 -> 체크 해제 4. 활동 기록 지우기 -> 지우기 5. 설정 - 개인정보 - 피드백 빈도: 사용 안함으로 변경
VMware와 Hyper-V는 동시에 사용하기 어렵습니다. 둘 다 설치 할 경우 아래와 같은 에러를 볼 수 있습니다. VMware Workstation and Hyper-V are not compatible. Remove the Hyper-V role from the system before running VMware Workstation. VMware를 선택하실 분들은 명령프롬프트를관리자 권한으로 실행해서 아래 작업을 수행하십시오. bcdedit /set hypervisorlaunchtype off 재부팅 제어판\모든 제어판 항목\네트워크 연결에서네트워크 어댑터 중에서 vEthernet (기본 스위치) 를 사용 안함 상태로 바꿈 Hyper-V를 선택하실 분들은 명령프롬프트를관리자 권한으로 실행해..
윈도우용 어플리케이션을 웹에 배포하려면 전자서명(code sign)이 필요합니다.전자서명을 하지 않으면 브라우저로부터 다운로드 받을 때 Windows SmartScreen filter(Window8부터 OS에 내장)등 보안프로그램들로부터 안전하지 않은 프로그램 취급을 받게 됩니다.이러한 전자서명을 위해 Code Signing Certificate (코드 서명 인증서) 가 필요합니다. 이 인증서는 symantec 이나 comodo 같은 인증서 발급업체 혹은 대행 업체로부터 구입을 해야 합니다.인증서 발급업체는 외국업체들이라 한국어를 지원하지 않기 때문에 흔히 대행 업체(한국전자인증 등)를 통해서 신청하고 발급받게 됩니다. 코드 서명 인증서의 종류도 크게 표준인증서와 EV인증서 두 종류가 있는데 2017년 ..
docker container도커는 컨테이너를 이용해 application을 구동하는데, 보통 가상 머신과 비교를 많이 합니다.가상머신은 호스트OS에서 게스트 OS를 설치하여 호스트로부터 완전히 분리된 가상화 환경을 구축할 수 있습니다. 도커 컨테이너는 호스트OS에서 사용중인 프로세스를 격리시키고 어플리케이션 실행에 필요한 바이너리를 묶어서 가상화합니다. 도커 컨테이너는 application과 이 application을 실행할 가상 컴퓨터가 같이 들어 있는 셈입니다. 즉, 컨테이너에는 도커가 관리하는 독립적인 가상의 리소스(메모리,디스크,IP,등)들을 가지게 되는 것입니다.컨테이너 안에서는 컨테이너 바깥의 환경에 접근할 수 없도록 고립 시켜서 관리하기 쉽게합니다. 가상 머신은 각각 가상 OS상에서 app..
Windows 10 docker 설치도커 사이트 https://www.docker.com/products/docker-desktop/ Docker Desktop: The #1 Containerization Tool for Developers | DockerDocker Desktop is collaborative containerization software for developers. Get started and download Docker Desktop today on Mac, Windows, or Linux.www.docker.com에서 윈도우용 도커를 다운로드합니다.기본값으로 설치를 합니다.고래 아이콘이 나타나면 설치가 완료된 것입니다. CentOS 7 docker 설치대개 리눅스 배포판에는 도커..
1. java.net.URL 클래스java.net.URL 클래스는 네트워크상의 URL과 자원을 처리합니다.웹 페이지, 이미지, 동영상, 스크립트 등 다양한 형태의 자원을 다룰 수 있습니다.또한 URL 문자열을 객체로 표현하고 다양한 정보를 추출하는 데 사용됩니다.중요 기능URL 문자열 파싱 및 객체 생성: URL 문자열 자체를 파싱하여 객체를 생성합니다.URL 정보 추출: URL의 프로토콜, 호스트, 포트, 경로, 쿼리 문자열 등 다양한 정보를 추출할 수 있습니다.자원 접근: openConnection() 메서드를 통해 URL에 해당하는 자원에 대한 연결을 생성하고, openStream() 메서드를 통해 입력 스트림을 얻어 자원의 내용을 읽을 수 있습니다.URL 유효성 검사: toExternalForm(..
1. JRE 런타임 실행 옵션자바 application을 실행할 때 JRE 실행 옵션으로 변수 값을 지정할 수 있습니다.-DmyVariable=변수 값이런 식으로 지정 할 수 있는데 System.getProperty("myVariable");같이 System.getProperty()를 이용하여 실행 중인 application 내에서 해당 변수 값을 읽어서 언제든 사용할 수 있습니다.이 변수 값을 다시 설정하려면 System.setProperty("myVariable", "value");이런 식으로 실행 중에 setProperty(key, value)으로 변수 값을 변경할 수도 있습니다.예를 들어 아래 Application이 runnable jar로 MainEx.jar 라고 빌드 되었다고 가정하고java ..
1. Ubuntu 서버 다운로드https://ubuntu.com/download/server https://ubuntu.com/download/server ubuntu.com2. 네트워크 연결우분투 설치에는 큰 어려움이 없겠지만, DHCP가 아닌 Manual로 고정 IP로 설정을 할 때 주의할 점이 있습니다.네트워크 관리자에게 받은 네트워크 설정 정보는 아래와 같다고 가정하겠습니다.SUBNET: 255.255.255.0Address: 192.168.2.60 GATEWAY: 192.168.2.1Name servers: 8.8.8.8우분투를 설치할 때 위와 같이 설정하면 빨간 글씨로 안된다고 나옵니다.결론적으로 말하면 아래처럼 CIDR 표기법으로 설정해야 합니다. SUBNET: 192.168.2.0/24..
# Jasypt(Java Simplified Encryption)Jasypt는 자바 애플리케이션에서 간단한 암호화/복호화를 수행하기 위한 라이브러리입니다.주로 프로퍼티파일이나 xml 등 설정 파일의 계정 정보 같은 문자열 데이터를 암호화/복호화하는 데 사용합니다.내부적으로 양방향 암호화와 단방향(Hash) 암호화를 조합하여 비교적 높은 수준의 암호화/복호화를 간편하게 사용할 수 있습니다.암호화키를 안전하게 저장하고 노출되지 않도록 주의해야 합니다.텍스트와 바이너리 모두 암호화/복호화 할 수 있습니다.Spring Security와도 연동 가능하며 멀티 스레드로부터 안전합니다. # 의존성 추가여기서는 1.9.3 버전 기준으로 합니다.maven의 경우 org.jasypt jasypt 1.9.3..
Visitor 패턴개요 및 장점Visitor 패턴은 형태가 거의 변경되지 않는 객체(데이터 구조)에서 처리 로직이 자주 변경되는 경우, 객체들의 구조와 알고리즘을 분리하여 적용할 수 있게 해 줍니다. 이 패턴은 객체의 클래스에서 알고리즘을 분리하여 새로운 알고리즘을 추가하거나 수정할 때 기존 코드를 수정하지 않고도 가능하게 합니다. Visitor 패턴은 새로운 기능을 추가하기 위해 기존 객체 구조를 변경할 필요 없이 새로운 방문자 클래스를 추가하면 됩니다.객체 구조에 대한 다양한 작업을 별도의 방문자 클래스로 분리하여 객체 구조와 방문자 클래스 사이의 결합도를 낮춰 코드 유지 관리를 용이하게 합니다. Visitor 패턴의 활용컴파일러: 소스 코드를 분석하고 변환하는 과정에서 방문자 패턴을 사용하여 각 문..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/9iRup/btsHhqXFthg/W6KIKbDfKkqRr7R767FZQ1/img.png)
SWT Text 위젯org.eclipse.swt.widgets.Text 위젯은 간단한 텍스트를 입력받을 때 사용하는 위젯입니다.addModifyListener() : 텍스트를 수정했음을 알리기 위한 리스너를 추가addSelectionListener() : 컨트롤이 선택되었음을 알리기 위한 리스너를 추가addVerifyListener() : 텍스트에 변화가 일어났는지 검증하기 위한 리스너를 추가append() : 현 텍스트에 주어진 문자열을 추가insert() : 현 텍스트를 주어진 문자열로 대체copy(), cut(), paste() : 선택된 문자들을 클립보드로 옮기거나 클립보드의 내용으로 대체setSelection(), selectAll() : 코드 상에서 직접 선택 영역을 설정setEchoChara..
FATAL: Peer authentication failed for user "..."1. 리눅스(CentOS)에서 postgresql 14를 설치2. 리눅스의 유저이자 슈퍼 유저인 postgres 계정 생성 3. psql이나 DBever등 툴 혹은 Web Application에서 접속4. database는 postgres라는 이름으로 생성, 스키마, 권한, Role 설정5. 일반 DBMS 유저(예: scott)를 생성하고 접속 시도 위와 같은 상황에서치명적오류: 사용자 "scott"의 password 인증을 실패했습니다.혹은치명적오류: 사용자 "scott"의 peer 인증에 실패했습니다.postgresql 접속시도시 위와 같은 오류가 발생하는 상황에서의 대처했던 경험에 대해 포스팅하겠습니다.유저 sco..
MyBatisMybatis는 내부적으로 JDBC를 이용해서 preparedStatement 실행시키는 방식으로 구동되는 프레임워크입니다.매퍼 xml 파일에 SQL문을 작성하고 관리하기 때문에 자바 소스에서 SQL문을 작성할 필요가 없어서 SQL을 수정했을 때 프로젝트를 다시 빌드를 할 필요가 없습니다.리소스 생성과 해제, try-catch 등 JDBC를 사용할 때의 반복 작업을 줄여줍니다.SQL를 직접 작성하기 때문에 ORM(JPA) 방식보다 SQL쿼리를 튜닝하는 등 복잡한 쿼리를 다룰 때 더 적합합니다. MyBatis 구조설정 파일(mybatis-config.xml): 데이터 베이스 설정과 트랜잭션 등 동작 규칙을 정의하는 파일입니다.매퍼 xml 파일: SQL 구문을 정의하고 namespace와 id..
popup은 차단이 기본 값popup은 보안 문제가 있어서 대부분의 브라우저에서 차단하는 것이 기본 값으로 되어있습니다.그렇지만 web application을 만들다 보면 popup 기능이 필요할 때가 있습니다.popup 윈도우의 대안으로 iframe, modal, overlay 등을 생각해 볼 수 있습니다. IFRAMEiframe의 경우에도 popup고 마찬가지로 보안 문제 때문에, 정책상으로 https으로만 접근이 가능하도록 하는 것이 일반적입니다.https으로 서버를 구축하려면 CA(인증 기관)으로부터 발급된 SSL 인증서가 필요합니다. 인터넷과 단절된 폐쇄된 내부 인트라넷 환경에서 HTTPS를 사용할 때는 내부 CA와 자체 서명 인증서를 이용해서 https를 구축할 수 있습니다.내부 CA(인증 ..
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/cSPAYZ/btqESW5nyD4/xnPLTF3EkPD8Mc6twokX9K/img.png)
싱글톤 패턴: 하나의 인스턴스만 사용하기 위한 디자인 패턴, 스레드 풀링, 커넥션 풀링 등에서 주로 사용합니다. 인스턴스를 생성할 때 참조 변수를 private static으로 합니다. 생성자를 private로 한다. 이는 외부에서 new로 인스턴스를 생성하지 못하게 합니다. 인스턴스를 리턴하는 public static getInstance() 메서드를 제공합니다. 이 메서드 내부에서 인스턴스를 생성할 때 null 체크 후 생성해서 인스턴스를 리턴 해야 합니다. 멀티스레드 환경에서는 위 getInstance메서드를 synchronized 해야 안전합니다. 하지만 전반적인 성능 저하 때문에 일반적으로 아래와 같은 패턴으로 코딩합니다. 싱글톤패턴1 public class InitializationOnDema..