일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- Java
- 큐
- Eclipse
- tcp
- 프로그래머스
- 파이썬
- DesignPattern
- 자바
- Python
- JDBC
- lambda calculus
- Spring
- 백준
- solid
- Pattern
- Collections
- JavaScript
- 로버트마틴
- Network
- 람다 칼큘러스
- 겨울카카오인턴
- functional programming
- exception
- design-pattern
- 함수형 프로그래밍
- javscript
- 스택
- Rails
- 디자인패턴
- Collection
- Today
- Total
목록토이프로젝트 (16)
개발자 노트
배포시 문제 encoding colsole을 통해 입력창을 구현했다. 그놈의 cp949, utf8때문에 한글이 안보인다. java version, jre java version 때문에 실행이 안된다. 최신 버전으로 작성했는데 막상 exe로 변환하는 프로그램을 이용할 때 1.8버전을 지원한다. 13버전으로 만든 jar파일은 java version 1.8 프로그램으로 exe파일을 생성할 시 실행이 안된다. 반대로는 호환이 되겠지만... 그래서 멋쟁이 eclipse로 다시 1.8버전으로 바꾼뒤 jar파일을 생성하여 만들었다. 실행이 됬다. 하지만 아래를 보면 exe파일을 만드는 의미가 거의 없다. exe파일로 만들면 jre가 필요없을 줄 알았다. python에선 필요없었기 때문에 이것도 마찬가지일 줄 알았다...
ver1.0문제점. (소스코드는 아래에 있습니다.) https://github.com/jurogrammer/PROJECT/tree/master/ftp%EB%8F%99%EA%B8%B0%ED%99%94 1.수정한 파일이 삭제된다. 원인 기존에 ftp에 있는 파일 목록이 있는 db가 있다. 그리고 클라이언트의 동기화 폴더를 탐색하며 이전 db목록들을 pop한다. 그리고 남은 것들에 대해서 삭제하는 방식. 그런데 수정한 파일은 hash값이 달라서 해당 파일이 기존 db에서 pop되지 않는다. 따라서 수정한 파일을 전송하고, 해당 데이터가 db에서 없어지지 않아서 삭제메소드 작동시 수정한 파일이 삭제된다. 해결방안 아예 자료구조를 새로 생각해보는 건?? 일단은 잘 작동되는게 목적이므로.. 나중에 리팩토링하자. ..
MainClass 못 찾는 문제 메이븐에서 메인 클래스를 지정해주지 않아서 그렇다. https://boxfoxs.tistory.com/332 이 분이 잘 설명해주셨다. 잘 실행되다가 class 못찾는 문제 proejct -> clean 해볼 것. Maven dependency class 못찾는 문제. maven dependency 설정시 라이브러리의 설치경로는 /user/.m2/repository 실행시 해당 위치에 있는 라이브러리를 참조했던 것이다. 그런데 메이븐 프로젝트로 빌드하면 manifest에 class-path가 설정되어 있지 않다. 그래서 maven dependency에 작성한 라이브러리(jar)를 못찾았던 것. 이를 해결하기 위해 해당 라이브러리를 참조할 수 있도록 설정해주면 된다. 라이브..
FtpSyn하며 알게된 것들 1.폴더삭제는 recursive삭제해야 함. 디렉토리는 파일을 담는 그릇 정도. 파일시스템.! 디렉토리 삭제는 -> 디렉토리 내 파일들을 삭제한다는 것. 그 파일 내에는 또 디렉토리가 있으므로 디렉토리 탐색하며 삭제. 말이 안되지만 디렉토리만 삭제 한다면? 파일에 접근할 수 없다. 파일이 삭제 된다해도 파일 시스템상 삭제된 파일이 기록됨. 이건 운영체제상 삭제관리가 아닌 것. 2.interface 사용 이유 -> 다형성으로 의존성 약화 파일 내용의 수정여부를 판단하기 위해 sha-1을 이용했다. 그런데 나중에 다른 해쉬함수를 이용할 수도 있다. sha-1이 아주 적은 확률로 충돌할수있다나... 그래서 sha-256으로 할 수 있는거 아니야? ->그럼 hashFunction이라..
명확히 다 쓰기엔 모든 걸 완벽하게 알지 못한다. 이래서 워터폴 방식은 안되나보다. 그래서 대략적인 관계를 보여주려한다. 1.객체간 데이터는 JSON으로 통일한다. => 복잡성을 최대한 줄이기 위해서. 각 클래스가 원하는 데이터에 맞게 전송해주려 하니 입출력데이터형을 일일이 다 봐줘야 한다. 이로 인해 의존성도 높아져서 JSON으로 통일하였다.(이래서 spring에서 DTO를 쓰는건가 싶다.) 2. FTP통신을 통해 server에 접속하여 파일을 다운,삭제 및 디렉토리 변경 등은 FTPManipulation 객체에서 담당해준다. 3.Client의 파일 탐색같은 건 FileManager가 담당해준다. 4.Synchronzation이 2.(server) 3.(client)의 디렉토리를 동일하게 설정해주어 파..
프로젝트 주제 win client와 ubuntu server 폴더를 동기화 하자! 목적 win client에서 작업한 결과물을 ubuntuserver에 동기화해서 웹 서버 동작을 ubuntu에 분담하기 위해서. 장점 iptime의 DDNS기능 이용 가능 서버가 위치가 고정된다 노트북의 cpu,memory 등 자원을 확보할 수 있다. 특징 win client -> ubuntu server로만 데이터를 보낸다. ftp 통신이다. win에서 변경하면 이 변경사항을 ubuntu server에 적용시키는 것. ubuntu의 변화는 win에 영향을 미치지 않는다. (win에서만 작업 수행.) 준비 작업 1. 두 컴퓨터간 동일한 환경으로 설정 mysql - 8.0.19 (utf-8 설정) openjdk 14.0.1 ..