Lv2 - 4주차 미션 : 비동기 통신&API / 댓글 추가 기능 구현 https://github.com/woowacourse/jwp-blog 학습목표 비동기 방식으로 통신하는 경험을 하고 프로세스를 이해한다. API 문서 자동화를 경험한다. 미션 댓글 기능을 비동기 방식으로 구현하기 기존에 구현했던 기능 중 필요한 부분은 비동기로 구현해보기 댓글생성 포함해서 반드시 3군데 이상은 적용해보기 Script를 활용하여 자동 배포하기 RollingFileAppender를 이용하여 배포한 서버의 로그를 저장하기 (adv) Spring REST Docs를 이용하여 문서 자동화 하기 (adv) 파일첨부 기능 구현하기 (adv) 외부 API 호출하기 체크리스트 요청에 대한 Acceptance Test를 구현했는가 H..
Lv2 - 3주차 미션 : 빌드&배포 구성 / 댓글 관련 기능 구현 https://github.com/woowacourse/jwp-blog 학습목표 JPA를 이용하여 기초적인 연관관계 매핑을 이해한다. 원격 서버에 배포하는 경험을 한다. 배포에 대한 기본적인 프로세스를 이해한다. 미션 게시글 작성 시 작성자 정보 부여하기 작성자만 게시글 수정/삭제 가능하게 하기 댓글 관련 기능 구현하기 원격 서버에 직접 배포하기 Script를 활용하여 자동 배포하기 체크리스트 모든 요청에 대한 Acceptance Test를 구현했는가 HTML 중복 제거하였는가 테스트의 중복을 제거하였는가 URL 컨벤션을 지키며 구현했는가 게시글과 회원 간 객체 연관관계가 잘 맺어졌는가? 댓글과 게시글, 댓글과 회원 간 객체 연관관계가 ..
2019.09.10 ~ 블로그 이전 http://blog.naver.com/ss1511 코드 작성이나 마크다운이 불편해서 결국 네이버에서 티스토리로 갈아타게 되었다. 티스토리도 아직 마크다운이 완벽히 호환되진 않지만.. 이미 포스팅한 글은 어쩔수없지만, 앞으론 최대한 글을 마크다운 문법으로 작성해보기로. 티스토리 블로그 관련 Todo github/블로그 스킨 코드 코드 호환성 추가 티스토리 Plugin의 Syntax Highlighter 설정완료 커스텀 Syntax Highlighter 추가 또는 colorscripter.com 이용 Disqus 추가 네이버, 구글 검색 연결 Google AdSense ...
앞선 글에서 이어지는 작업이다. 우리는 서버의 로컬 (프로젝트 폴더 외부)에 이미지나 동영상같은 파일을 저장하기로 결정했다. 개발을 진행하며 CRUD의 업로드까진 성공했다. R- 클라이언트에서 파일을 읽는것도 성공할줄알았다... 1. path(string)로 클라이언트에서 서버의 로컬 파일에 접근한다 (-> 불가능) 우리는 DB에서 filePath, fileName을 저장하고있었고, 이를 통해 서버는 파일 path를 String으로 클라이언트로 보내도록 하였다. 클라이언트는 다음과 같이 로딩된다. 문제는 이런 경우, 파일이 정상적으로 로드되지않고, 캡쳐하진 못했지만 개발자도구 콘솔에서 permisson denied였나, 이런 에러메시지를 확인할수있다. 알아보니, 예전 IE에선 되기도 했다고 하나 최근의 ..
어느덧 우테코 레벨2 미니프로젝트를 시작하게 되었다. 우리팀은 인스타그램을 클론하기로했고, 가장 먼저 내가 맡은 일은 게시글 관련 기능이다. 이때 사진과 동영상을 업로드해야한다. 일반 텍스트 데이터는 그냥 DB에 넣으면 됬는데, 이미지와 영상은 어떻게 해야할까? 먼저 이미지를 고려해서 가능한 방법들을 생각해봤다. 1. S3 이용 실제 현장에서 이런 방식으로 점점 전환되는 분위기인것 같고, 각종 걱정거리를 덜어주고 편하게 되는것같다. 우리팀은 S3 요금문제(나중에보니 가능하더라)와 지금단계에선 뒤에서 나올 기본적인 방법들을 먼저 경험해보고자, 이 방법은 보류했다. 이건 나중에 결국 쓰게될것같아서. 관련된 키워드는 "Springboot & S3"로 검색하면 많이 나와서, 나중에 s3를 쓸일이 생기면 참고하면..
Django https://www.djangoproject.com/ https://developer.mozilla.org/ko/docs/Learn/Server-side/Django/Introduction 장고는 이 구조를 MVT(Model View Template)이라 부르며, 이는 MVC(Model View Controller) 아키텍처와 유사하다. 설치, 환경설정 ubuntu) python 설치 (보통 기본설치 되어있음. v3 권장) pyenv, virtualenv 설치 (아래링크의 curl을 통해 pyenv를 설치한경우 virtualenv도 자동으로 함께 설치된다) https://wikidocs.net/10936 ★ https://cjh5414.github.io/ubuntu-pyenv-virtual..
웹으로부터 원하는 형식의 파일만 받고 싶을 때, 당연히 서버에선 필터링을 해야 한다. 사실 프론트에서도 (아무리 양심이 없어도) 최소한 다음과 같이 Accept 형식 제한은 걸어놓을것이다. 아래와 같이 accept를 설정하면 첨부파일 선택화면에서 사진과 영상 파일만 보인다. 사실 이건 우측하단을 "모든 파일"로 선택하면 다른 형식의 파일도 보여 선택 가능하게 된다. 따라서 선택된 다른 형식의 파일을 서버로 submit하기 전에 한번더 원하는 형식의 파일인지 확인하는 JS 방법이 분명히 있을 것이고, 또는 애초에 input 태그대신 좀더 기능이 추가된 라이브러리도 있지않을까싶다. 프론트에서 1차적으로 확인하는 것이 물론 좋고 다들 그렇게 하고 있겠지만, 이번엔 서버에서 FilenameUtils (Apach..
Singleton 패턴과 (모든 메서드가 static으로 이뤄진) Static Class의 차이 차이점SingletonStatic Class원리사용자 요청시 하나의 인스턴스를생성해 재사용인스턴스를 만들수없고,당연히 생성자도 갖지않는다인터페이스 구현 (가장 큰 차이점)가능불가능follow OOPOX, 절차적 디자인으로 '함수'에 가깝다override가능불가능load필요할때 Lazy load 가능static binding in compile-timeperformance상대적으로 slowfast, by static bindingtesteasierhard to mock and test저장 위치 (중요x)HeapStack => Singleton이 좀더 나은 분위기이고, 'OOP와 다형성의 이점'이 ..
- Total
- Today
- Yesterday
- 리버싱
- Stack
- queue
- Java
- javascript
- 개발자
- Data Structure
- dfs
- reversing
- brute-force
- mysql
- FRAGMENT
- Algorithm
- socket
- 웹해킹
- C
- 회고
- Android Studio
- git
- OneToMany
- 우아한 테크코스
- 프로그래머스
- Vo
- JPA
- bfs
- graph
- 해외여행
- sort
- Android
- webhacking.kr
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |