본문 바로가기
  • 오늘도 한걸음. 수고많았어요.^^
  • 조금씩 꾸준히 오래 가자.ㅎ

IT기술431

yaml 과 yml 확장자는 사실 같다. yaml과 yml파일 확장자는 모두 해석 및 구문이 동일합니다. 3글자인가 4글자인가 확장자의 차이가 있긴 하여 다른파일이 아닌가? 생각할 수 도 있지만, 실은 동일한 파일입니다. 이렇게 분리된 이유는 옛날 Windows에서 Extensions는 파일확장자가 3자로 제한되는 특성이 있었기 때문이라고 합니다. 그래서 예전에는 .html 대신 .htm 으로도 쓰였는데 이와 같은 원리입니다. 요즘은 확장자에 3글자를 넣어야 하는 OS 시스템 수준의 시행이 없으니, 4글자인 .yaml로 사용해도 문제없습니다. 2024. 2. 5.
[Linux] brctl 브릿지 네트워크 관리 brctl 이란? Linux 커널에서 이더넷 브리지 구성을 설정, 유지 관리 및 검사하는 데 사용됩니다. 이더넷 브리지는 일반적으로 서로 다른 이더넷 네트워크를 함께 연결하는 데 사용되는 장치로, ifconfig를 보면 별도의 이더넷으로 표시됩니다. brctl을 통해 별도의 이더넷 브릿지를 추가하고 조회도 가능합니다. 도커를 설치하면 도커용 bridge인 docker0 이 만들어지는데, brctl로도 조회가 가능합니다. 설치 sudo apt-get install bridge-utils -y brctl show 2024. 2. 5.
[Docker] 도커 이미지 빌드 문제풀이 따배도 4.2 도커 컨테이너 만들어보기 실습을 직접 풀어본 소스입니다. 2024. 2. 3.
[java] assert 개발 테스트 에서 조건 걸기 Java에서 버그 또는 예상치 못한 상황을 검출하고 적절히 대응하기 위해 사용하는 방법이 있습니다. 주로 exception을 사용할 수 있으며, 특정한 경우 예외를 던져 경우에 대비하고 프로그램이 멈추지 않게 합니다. 다만 특정한 경우에 대비하기 위해 exception을 여러개 배치하기도 합니다. - 주로 Exception은 try catch로 묶어서 사용하거나 throws로 에러를 던지기도 합니다. 또다른 방법으로는 switch나 if else 에 조건을 여러개 넣어가며 검증하는 방법도 있겠습니다. 실제로 들어오는 데이터의 검증이 필요하다면 이를 통해 필터링 할 수도 있습니다. - 유용한 방법이긴 하나, 코드가 상당히 길어져 가독성이 떨어질 수 있습니다. 그러다가 assert 라는 것을 알았는데, jd.. 2024. 2. 3.
[Docker]도커 로그인 에러 확인하기 repository does not exist or may require 'docker login': denied: requested access to the resource is denied 명령어를 잘못쳣을 경우 이런에러가 발생할 수도 있습니다. 다만, docker hub 로그인을 실패해서 이런경우가 생기는 경우도 있다고 한다고 합니다. 그럴 경우 docker hub 의 계정이 필요하다고 합니다. $ docker login 위 사진처럼 docker login을 실행하신 다음 docker hub 의 계정을 입력해주면 로그인 됩니다. 로그인 정보는 계정의 .docker/config.json 에 저장된다고 합니다. 그 뒤에 다시 pull 을 실행하면 잘됩니다. 2024. 2. 2.
[DB, JBDC] 데이터베이스 연결, JDBC, SQL Mapper, ORM 정리 프로그래밍은 절차지향, 객체지향, 함수형 프로그래밍 같은 개발 지향적 방법이 있습니다. 비슷하게 데이터베이스도 데이터를 저장하고, 데이터에 접근하여 읽기 위해 사용하며 효율적으로 데이터를 저장하기 위한 방법이 있습니다. 대표적으로 관계형(RDB)으로 저장하거나 비관계형(NoSQL DB)으로 저장하기도 합니다. 자바를 기준으로 DB를 사용하려면 아래같은 구조가 필요합니다. 자바 어플리케이션 -> 데이터 접근 인터페이스 -> 데이터 베이스 자바어플리케이션에서 데이터베이스에 접근하기 위해 데이터 접근 인터페이스를 통해 연결을 구현하고 데이터를 교환하게 됩니다. DB에서 데이터를 교환하는 과정을 크게 풀어보면 다음과 같습니다. - DB에 Connection을 연결합니다. - Connection 을 통해 SQL을.. 2024. 1. 29.
[DB] 데이터 모델링, 관계형 데이터베이스에서 1:1, 1:N, N:N 관계 데이터베이스 설계를 하기 위해 데이터 모델링을 공부하고 있습니다. 요구사항 분석-개념적 모델링- 논리적 모델링- 물리적 모델링 단계를 거쳐 데이터베이스를 설계하는 것이 일반적이긴 하기에 이 방법대로 진행하고 있습니다. - 요구사항 분석 : 저장이 필요한 요소가 어떤게 있는지 모아서 정리 - 개념적 모델링: 중요 개념을 기준으로 핵심 Entity 도출, ERD 작성 - 논리적 모델링: Entity를 구체화하고 상세 속성을 작성, 엔티티간 관계 정의 및 정규화, ERD 세부작성 - 물리적 모델링: 데이터베이스 생성 계획에 따라 개체 인덱스 등을 생성, 테이블 및 인덱스 설계 모델링을 하는데 있어 데이터 관점(데이터 위주), 프로세스 관점(처리과정 위주), 상관 관점(데이터와 처리과정의 적절한 조합)에서 모델.. 2024. 1. 27.
[VsCode] 단축키 사용자 지정, 유용한 단축키 정리 1. 설정에 들어가서 바로 가기 키 확인 2. 유용한 단축키 확인 - 위에 커서 추가 : ctrl + alt + upArrow - 아래 커서 추가 : ctrl + alt + downArrow - 위에 줄 복사 : shift + alt + upArrow - 아래 줄 복사 : shift + alt + downArrow - 줄 주석(//)설정 : ctrl + / - 내용으로 파일별 검색 : ctrl + shift + f - 열린 파일에서 문자검색 : ctrl + f - 파일 저장 : ctrl + s 3. 파일 자동저장 설정 2024. 1. 26.
[Java] string 시작문자로 시작되는지, 끝문자로 끝나는지 확인하기 체크하기 자바에서 시작문자로 시작되는 경우를 체크하거나 끝문자로 끝나는 경우를 확인해야 하는 경우가 생겼습니다. 아래 예시처럼 무한반복 루프에서 탈출하기 위한 조건으로 특정 문자로 시작하거나(quit) 특정 문자로 끝날 때(mon) 반복을 종료시키는 소스를 만들었습니다. 유용하게 사용가능한 String method인 String.startsWith() String.endsWith() 를 사용할 수 있습니다.(아래 예제에서 .equals("quit\n") 해도 될거같긴 합니다.) public static void main(String[] args) throws Exception { InputStream is = System.in; Reader reader = new InputStreamReader(is); int .. 2024. 1. 24.
이스케이프 문자. 이스케이프 문자 이스케이프 문자는 특별한 문자를 입력하기 위해 백슬래쉬(\)를 붙이는 문자다. 이스케이프 문자들 중 많이 쓰이는 것들은 아래와 같다. 간혹 개행을 위해서 \r\n 으로 사용하는 경우가 있다. \n 라인피드 만 써도 개행이 되긴 한데, 두개를 같이 붙이는 이유는 라인피드에서 커서 위치도 같이 이동되게 되었기 때문이 아닐까 싶다. 커서의 위치도 같이 변경이 확실해지려면 \r를 써야될 수도 있다. \\: 백슬래시 \n: 개행 문자 (라인 피드 (LineFeed). 다음 행으로 바꿈) \r: 개행 문자 (캐리지 리턴 (CarriageReturn). 커서를 행의 앞으로 이동. 잘 사용하지 않는다.) \t: 탭 문자 \': 작은따옴표 (작은따옴표 안에서 작은따옴표를 쓰고 싶을 때 씀) \": 큰따옴.. 2024. 1. 24.
[javascript] 모바일 환경 pc환경 구분하기 웹사이트를 개발하다보면 모바일 환경인지, PC환경인지에 따라서 소스를 분리시켜야 하는 경우가 생기기도 합니다. 이런 기능을 쓰는 이유는, 웹과 모바일 환경에서 사이트를 접속하며, 상대적으로 가벼운 웹사이트를 요구하는 모바일 환경에 대응하기 위한 부분도 있고, 모바일용 페이지와 웹용 페이지를 별도로 만들지 않고 운영하기 위한 부분도 있기 때문입니다. 요즘은 이런 기능을 위한 별도 js 스크립트도 개발되어 배포되고 있다고 하지만, 단순히 적용 가능한 방법을 기술해보려 합니다. 바로 자바스크립트 내장함수인 navigator.userAgent 를 이용하는 것입니다. 이는 여러 페이지에서 접속되는 디바이스를 구분하여 출력하는 함수인데, 이것만 가지고 모바일 환경인지 구분하는 것은 현대에선 좋은 방법이라고 보지 않.. 2024. 1. 23.
[spring] postgre db JDBC 연결 테스트 부트 프로젝트를 만들고, local에 설치해둔 postgredb와 연결해보려 합니다. 프로젝트를 만들고 설정을 정리해두겠습니다.. 1. JDBC 연결하기 저는 42.6.0버전을 사용하려 합니다. 2. 프로퍼티에 정보 등록 # Postgresql spring.datasource.url=jdbc:postgresql://localhost:5432/ticket spring.datasource.username=userid spring.datasource.password=password # JPA spring.jpa.hibernate.dialect = org.hibernate.dialect.PostgreSQL10Dialect spring.jpa.hibernate.ddl-auto=update spring.jpa.pr.. 2024. 1. 23.