본문 바로가기

전체보기

(94)
[JAVA] find image file size - File 이미지 크기(가로X세로) 구하기 파일의 크기가 아닌 이미지 파일의 가로X세로 크기를 구하고 싶었다. BufferedImage 를 사용하여 이미지의 크기를 구해보자. @Transactional public String createImage(Image imgVo, MultipartFile file) { . . . if(file != null) { String restoNm = createAttachFile(imgId, file); Path filePath = fileCon.uploadFile(file,restoNm); try { File imageFile = new File(filePath.toString()); BufferedImage image = ImageIO.read(imageFile); // 이미지 파일 읽어오기 if (image..
[JAVA] 이미지 URL 변환 후 화면에 보여주기(가져오기) (feat.미리보기) 나는 클라이언트에서 특정 url 로 이미지를 요청하면 이미지를 보내주는 방식을 만들고 싶었다. Vue Axios 와 REST API, InputStream, URL.createObjectURL() 을(를) 이용하였다. 1. JAVA Spring Server 1) Controller @GetMapping(path = "image/{imgId}/show") public void getImageFileById(@PathVariable(name = "imgId") String imgId, HttpServletResponse response) throws IOException { service.getImageFileById(imgId, response); } 요청 받을 url path 설정해주고, url에 따라서..
[Linux | Ubuntu] PuTTY 접속 오류 해결 방법 - Network error: Connection refused Network error: Connection refused PuTTY로 서버를 접근하려는데 네트워크 에러가 발생했다. 1. 방화벽 해제 포트 추가 1-1) 윈도우 시작 창에 "고급 보안이 포함된 Windows Defender 방화벽" 검색 1-2) 인바운드 규칙 - 새 규칙 추가 규칙 종류 : 포트 우분투의 경우 웬만하면 포트 번호 22이다. 등록하고자 하는 포트 번호를 입력한다. 사용할 이름 설정 후 마침. 2. Openssh-server 설치여부 확인 // 전체 목록 rpm -qa // openssh-server 만 rpm -qa | grem openssh-server 설치가 안 되어있다면 설치하기 sudo apt-get install openssh-server 3. IP 확인 내가 연결하려는 서버..
[Linux | Ubuntu] SSH 터미널 접속 설정 : PuTTY 연결 하는 방법 * 네트워크 설정은 되어있다는 가정 하에 설명 1. root 계정으로 접속 // 내 정보 확인 whoami // 루트 비밀번호 설정 sudo passwd // 루트 접속 / 비번 입력 su 2. openssh 설치 sudo apt-get install openssh-server 3. ip 확인 // apt install net-tools ifconfig 4. sshd_config 파일 수정 sudo vi /etc/ssh/sshd_config or sudo nano /etc/ssh/sshd_config 둘 중 하나의 편집기로 열어 수정한다. vi 는 "a"를 누르면 수정 가능하며 대소문자를 구분한다. nano 는 바로 수정 가능하다. // # 주석처리 제거 필요 Port 22 PermitRootLogin ..
[Linux | Ubuntu] CMD(명령 프롬포트)에서 PuTTY 설치하기 sudo apt-get install putty install 후 터미널에서 putty 입력하면 putty 가 실행 된다.
[Linux | Ubuntu] PuTTY : unable to load font "server:fixed" - 폰트 에러 해결 방법 PuTTY : unable to load font "server:fixed" Putty 를 실행하는데 "server:fixed" 라는 폰트를 읽어올 수 없다고 에러가 발생했다. PuTTY 실행 후 Fonts 메뉴 선택 "server:fixed" 라고 적혀있는 폰트를 변경 해준다. 나는 "Ubuntu Mono" 로 선택했다. 폰트는 본인 마음에 드는거로 하면 됨. 적용 후 재실행 하면 서버가 정상 가동된다.
[Spring] boot 에서 JWT 인증 토큰 생성 및 사용하기 1. JWT 인증 Json Web Token 인증에 필요한 정보들을 토큰에 담아 암호화시켜 사용하는 방식이다. 서명된 토큰이라는 점에서 쿠키보다 더 보안성이 높다. JWT의 구조 Header, Payload, Signature의 구성 요소로 이루어지며 각 구성 요소가 마침표(.)로 구분된다. Header - 토큰의 타입이나, 서명 생성에 사용되는 알고리즘을 저장한다. Payload - 토큰에 담을 정보를 key-value 형태로 저장한다. Signature - 서명이 저장되는데 암호화되어 있기 때문에 서버에 있는 개인 키로만 복호화가 가능하다. 2. JWT 생성 1) dependencies 추가 io.jsonwebtoken jjwt 0.9.1 org.springframework.security sprin..
[Git][Sourcetree] 소스트리 pull / push 에러 발생 시 강제 pull 하는 방법 Please commit your changes or stash them before you merge Sourcetree 에서 push 를 하려는데 해당 에러가 발생했다. 병합 과정에서 충돌이 일어난 것이다. Sourcetree 에서 터미널을 킨 후 git pull --rebase --autotash 를 입력 해주면 pull 되고 정상적으로 push 할 수 있다. 해결
[Spring] Multi module - 모듈 별 application.yml 파일 환경 설정 및 관리하는 방법 common 모듈 application.yml api 모듈 application-api.yml 다른 프로젝트를 import 해서 사용할 때 프로젝트 별로 yml 파일이 존재한다. 설정 파일의 이름이 동일 할 경우 상위 파일을 먼저 읽어서 하위 파일은 인식을 못 한다. common 과 api 의 application.yml 을 둘 다 사용해야 하는 경우를 알아보자. 모듈 별로 yml 분리하기 @SpringBootApplication public class apiApplication { public static void main(String[] args) { System.setProperty("spring.config.name", "application,application-api"); SpringAppli..
[JAVA] 다른 프로젝트 클래스 import 하기 + Dynamic Web Module 추가하는 방법 프로젝트를 하다 보면 다른 프로젝트의 공통 기능이 필요할 때가 있다. 1. 사용하려는 프로젝트 우클릭 > Properties 클릭 2. Java Build Path > Projects > add Project * ModulePath 가 아닌 ClassPath 에 넣어야 한다. Dynamic Web Module 이 설치되지 않았을 경우 ModulePath , ClassPath 가 보이지 않고 하나로 통합되서 보인다. 설정이 끝나고 build 후 재시작 시 import 시 에러는 사라지고 정상 작동이 된다. * 실행 시 런타임 에러가 발생할 경우 Properties > Deployment Assembly > add Proejct 를 해주면 런타임 시 에러가 발생하지 않는다. * Deployment Assem..