반응형

전체 글 226

[Javascript] Javascript Object객체 순서 정렬

우선 나는 Tree구조로 되어있는 Menu를 만들때 Javascript의 Object는 순서가 보장되지 않는다는것을 알았다. DB에서부터 정렬을 잘 해서 Javascript로 받고, Javascript에서 Tree구조를 만들때 발생한 상황이다. 예를들어 원하는 순서는 1,2,3,4,5 => 입력된 순서라고하면 Javascript Object를 사용해 For문을 돌리고 Tree구조를 만들때 2,1,3,4,5 이런식으로 순서가 섞이는 상황이 발생하였다. 이에 해결방안으로 Tree구조를 만들고, 내가 원하는 특정 키로 Sort하는 방식을 사용했다. function convertMenuTree(arr) { var tree = [], mappedArr = {}, arrElem, mappedElem; for(var..

[Knowledge] 기본 면접 질문사항들

OOP란? 객체 지향 프로그래밍이란 현실 세계를 프로그래밍으로 옮겨와 프로그래밍하는 것을 말합니다 현실세계의 사물들을 객체라고 말하고, 그 객체로부터 개발하고자 하는 APP에 필요한 특징들을 가져와 프로그래밍 하는 것입니다. 대표적으로 캡슐화, 추상화, 상속, 다형성이 있습니다. 캡슐화 하나의 객체에 대해 그객체가 특정한 목적을 위해 필요한 변수 및 메소드로 묶는것을 의미합니다. 이때 실제구현 한 내용 일부를 외부에 감추어 은닉화 합니다. 추상화 구체적인 내용은 감추고, 보여주고 싶어하는 특성은 드러내는것을 말합니다. 예를 들어 인터페이스로 보여주고 싶은것들을 표현하고, 해당 인터페이스를 구체적으로 구현하는 것은 숨겨놓는 방식입니다. 상속 부모클래스가 가지고 있는 것들을 자식클래스가 물려받아 같이 공유하..

[WebSocket] Interceptor 사용 및 검증 절차 방법 /HttpSessionHandShakeInterceptor 사용

1). Servlet-context.xml 에 Interceptor 및 Handler Bean 등록 핸들러와 Interceptor를 등록해준다. 2). HttpSessionHandShakeInterceptor Override 작성 => WebSocketHandShakeInterceptor.java Interceptor로 우리는 HttpSession을 이용하려고한다. Handler로 넘겨서 사용할 데이터는 별도로 attributes에 담아서 넘겨줘도 되니 확인! public class WebSocketHandShakeInterceptor extends HttpSessionHandshakeInterceptor { /** * @desc 웹소켓 핸드쉐이크 전 호출 메소드 */ @Override public bo..

[Jenkins] What is Jenkins? CI/CD란?

1). 젠킨스란? 소프트웨어 개발 시 지속적으로 통합 서비스를 제공하는 툴 CI(Continuous Integration) 툴 이라고 표현 쉽게 말해 빌드 자동화 툴이다. 다수의 개발자가 하나의 프로젝트를 만들때 버전 충돌을 방지하기위해 각자 작업한 내용을 공유영역에 있는 저장소에 자주 업로드함으로써 지속적으로 통합을 가능하게 해준다. 젠킨스와 같은 CI툴이 등장하기 전에는 일정시간마다 빌드를 실행하는 방식이 일반적이었다. 특히 개발자들이 당일 작성한 소스들의 커밋이 모드 끝난 심야 시간대에 이러한 빌드가 타이머에 의해 집중적으로 진행되었는데, 이를 nightly-build라 한다. 하지만, 젠킨스는 정기적인 빌드에서 한발 나아가 서브버전, Git 과 같은 버전관리시스템과 연동하여 소스의 커밋을 감지하면..

[Knowledge] MVC , MVP, MVVM 디자인 패턴 개념

궁금했던것들을 좀 찾아보며 견문을 넓혀야겠다라는 생각이 들었다. 기존 SpringFramework로 개발한것만 생각하면 MVC Model2패턴이 다인가 라는 생각에 검색을 해본적도 있었지만 정리는...ㅎ; 오늘 정리를 좀 해봐야겠다. 1). MVC Model2 정의 : Model + View + Controller 세가지를 합친 용어 Model : App에서 사용되는 데이터 + 데이터를 처리하는 로직을 담당 View : Client에 보여지는 UI 담당 Controller : Client의 요청을 받고 반응 처리 담당 동작 : 사용자의 Action들은 Controller로 보내진다. Controller는 사용자의 Action를 확인 => Model을 업데이트 Controller는 Model을 나타내줄 V..

[Java-Algorithm] HackerRank Java - Sherlock and Anagrams 풀이

1). 문제 : www.hackerrank.com/challenges/sherlock-and-anagrams/ Sherlock and Anagrams | HackerRank Find the number of unordered anagramic pairs of substrings of a string. www.hackerrank.com 2). 풀이 : Comparator를 알고있는지 모르는지에 대한 문제였던것 같다. compareTo를 사용했을때 클때, 같을때 작을때 1, 0, -1 을 return하는것만 알고있으면 비교할때 쉬울수있는 문제. import java.util.*; class Player { String name; int score; Player(String name, int score) { ..

[Spring-JSP] 파일업로드 처리 / 파일(단,다중) + 추가정보 @ModelAttribute

파일업로드를 구현할때가 굉장히 많을 것이다. 하지만 여러가지 상황으로 파일하나만 올리는지, 파일과 추가정보를 같이 보내는지, 여러파일을 올리는지에 따라 사용법이 다르기 때문에 정리해 놓으려고 한다. 단일 파일 업로드 다중 파일 업로드 파일업로드 + 추가정보 => @RequestParam => 개별로 (파일&추가정보) 파일업로드 + 추가정보 => @ModelAttribute => 한번에 클래스 매핑 보통 스프링에서 파일업로드를 사용할때 두가지 방식 중 하나를 선택해서 사용한다. Servlet 3.0 Multipart Request 사용 Apache Commons FileUpload API 사용 나는 Commons Fileupload를 사용해서 정리를 해놓을 예정이다. 1). Dependency추가 comm..

반응형