목록Etc (51)
불친절한 블로그
TypeScript? TypeScript는 JavaScript에 타입을 부여한 언어다. JavaScript의 확장판이라고 생각하는게 좋다. TypeScript는 JavaScript와 다르게 브라우저에서 실행하려면 파일을 한번 변환해주어야 하는데, 이 과정을 컴파일 이라고 부른다. TypeScript 특징 JavaScript는 동적 타입의 인터프리터 언어로 런타임에서 오류를 발견할 수 있다. 반면 TypeScript는 정적 타입의 컴파일 언어이며 타입스크립트 컴파일러 또는 바벨을 통해 자바스크립트 코드로 변환된다. 코드 작성 단계에서 타입을 체크해 오류를 확인할 수 있고 미리 타입을 결정하기 때문에 실행 속도가 매우 빠르다는 장점이 있다. 하지만 코드 작성 시 매번 타입을 결정해야 하기 때문에 번거롭고 코..
실습 환경 OS : windows11 공유기 : ipTIME 노트북으로 회사공유폴더에 접근하고 싶었다. 하지만 회사 와이파이와 랜선으로 직접연결하는 게이트웨이 주소가 달랐다. 그래서 문서공유가 불가능했다. 공유기 DDNS 기능을 사용해서 VPN을 만들고, 각각 다른 게이트웨이여도 접근가능하게 시도해보았다. 공유폴더를 제공해줄 PC에서 작업 iptime 설정에 접근하기 위해 게이트웨이 주소를 알아야 한다. 명령 프롬프트를 실행한다. 윈도우키를 누르고 cmd를 검색한다. 명령 프롬프트를 실행한다. 커멘트에 'ipconfig'를 입력한다. 게이트웨이 주소 기억한다. 인터넷 검색창에 게이트웨이 주소를 입력한다. 그럼 공유기 설정에 접근할 수 있게 된다. 보통 초기 계정정보는 ID : admin PW : admi..
EC2에 postgresql 설치하고 실행하기. postgresql 설치. EC2에 접근하였으니, 이제 postgresql를 설치 sudo amazon-linux-extras install postgresql10 epel -y sudo yum install postgresql-server postgresql-devel -y /usr/bin/postgres --version sudo /usr/bin/postgresql-setup --initdb postgresql 설정파일 수정하기. 권한때문에 root 유저로 접근 postgresql.conf를 수정해줘야한다. $ sudo su # vi /var/lib/pgsql/data/postgresql.conf postgresql.conf 파일은 아래와 같이 수정한다..
실습 환경 OS : windows10, linux(ubuntu 20.04.3 LTS) 터미널 접속 툴 : putty 남아있는 피씨로 공유폴더를 만들어서 사용하고 있었다. 하지만 여러사람이 사용하면서 파일전송 속도가 확연히 느려지고, 네트워크 통신이 자주 끊겨서 현재 내부 서버로 사용되고 있는 리눅스 기반의 워크스테이션에 공유폴더를 만들어서 사용해보려고 한다. 같은 인터넷을 잡고 있어서 내부ip로 접속해서 공유폴더를 만들면 되지 않을까? 생각을 하던참에 구글링을 해본결과 윈도우 - 리눅스 파일공유에 대해 글이 있길래 살펴봤다. 자 우선 워크스테이션에 접속해보자. putty를 켠다. Host Name에 워크스테이션의 내부ip를 입력한다. 포트번호는 변경하지 않았으면 ssh 기본 포트 22로 되어있을 것이다...
컴퓨터를 켰을때 모든 아이콘이 그림처럼 깨져있을 때가 있다. 많이 당황스럽다. 파일이 사진이면 사진을 확인하기 위해서는 하나하나 눌러서 확인해야한다. ㅠㅠ 원래대로라면 미리보기 이미지가 나왔었는데... 구글링해본 결과 iconcache.db의 캐시 파일 문제라고 합니다. iconcache.db 캐시 파일을 다시 생성해서 아이콘들이 하얀색으로 깨지는 현상을 해결해봅시다. 메모장을 켭니다. 메모장 내용으로 iconcache.db 캐시파일을 다시 생성하는 명령어를 작성합니다. @echo off taskkill /f /im explorer.exe attrib %userprofile%\appdata\local\iconcache.db -s -r -h del /q %userprofile%\appdata\local\i..
MPA는 Multi Page Application 여러 개의 페이지로 구성된 Application MPA는 새로운 페이지를 요청할 때마다 정적 리소스가 다운로드된다. 항상 전체 페이지가 다시 렌더링 된다. MPA를 SSR(Server Side Rendering)방식을 사용해서 렌더링 한다. 장점 1. SEO(Search Engine Optimization, 검색 엔진 최적화) 관점에서 유리하다. 완성된 형태의 HTML 파일을 서버로부터 전달받는다. 그렇기에 검색엔진이 페이지를 크롤링하기에 적합하다. 2. SPA에 비해 첫 페이지 로딩이 매우 짧다. 단점 1. 페이지를 이동할때마다 리로딩이 발생한다. 2. 프론트엔드와 백엔드가 결합되어 있다. 개발이 복잡해질 수 있다. 관리가 어려워질 수 있다. 3. 서버..
프로젝트를 생성한다. 크게 고쳐야할 부분은 없다. spring web을 선택해준다. 프로젝트가 생성되었다면 build.gradle에서 두가지를 추가해준다. implementation 'org.hibernate:hibernate-entitymanager:5.3.10.Final' runtimeOnly 'org.postgresql:postgresql' 그리고 persistence.xml을 META-INF 디렉토리에 넣어준다. persistence.xml은 이렇게 작성한다. java class 파일을 만든다. run 시켜서 에러가 있는지 확인해본다. member 테이블을 생성한다. member 엔티티를 만든다. gatter 와 setter도 만들어준다. 삽입하기 insert 코드를 만들어본다. persisten..
ES6 이후부터 'let'과 'const'가 등장했다. 기존에는 변수를 선언할 때, 'var'를 많이 썼었는데 새로 추가된 'let'과 'const'는 'var'와 어떻게 다른지 확인해봐야겠다. 아래의 예제를 보면 'name'으로 선언을 두번 했지만 'var'의 경우 에러가 나지 않는다. 간단한 테스트라면 문제가 없겠지만 복잡한 코드에서 에러가 발생했을 때, 문제파악이 힘들어지고, 값도 바뀔 가능성이 있다. 'let'과 'const'는 같은 이름으로 재선언이 불가능하다. 그럼 'let'과 'const'의 차이는 무엇인가? 재할당의 차이가 있다. 재할당은 변수의 값을 변경하는 작업이다. 'let'은 재할당이 가능하다. 'const'는 재할당이 불가능하다. 추가적으로 'var'의 사용할 수 있는 범위는 함수..