개발
-
이클립스에서 기본 클래스 을(를) 찾거나 로드할 수 없습니다 가 뜰 때개발/JAVA 2019. 3. 21. 11:27
가끔 잘 되던 프로젝트를 실행시키다 보면오류: 기본 클래스 을(를) 찾거나 로드할 수 없습니다. 가 뜰 때가있다.클래스패스문제인 경우라 하여 환경변수에서 CLASSPATH 를 %JAVA_HOME%\lib; 로 되어있는것 뒤에다가 \나 . 등을 찍어 해결한다는 글들을 보았지만 다른 얘기였다. 이클립스의 경우 RUN/DEBURG 세팅에 되어있는 실행클래스에 대한 설정에 문제가 있는것으로 예상되어(이걸 어떻게 표현할 지 모르는... 무지한 지식이 부끄럽다) 이걸 삭제하고 다시 실행하면 된다.경로는 프로젝트 우클릭 -> properties -> Run/Debug Setting 중앙에 들어있는 java application에 설정되어있는것을 삭제하면 된다.
-
배열 복사 arraycopy개발/JAVA 2019. 3. 20. 17:27
tcp/ip 통신에서 서버로 데이터를 보내기 위해 바디 값에 헤더값을 추가, 그리고 헤더값에바디값에 대한 정보를 담아야 했다.때문에 바이트형식의 배열을 생성하고 기존의 값을 변환하여 옮겨야 했다.이 때 사용하는 것이 System.arraycopy 메소드다. 사용법은 arraycopy(Object src, int srcFrom, object mainSrc, int mainSrcFrom, length) 에서src = 옮길 배열srcFrom = 옮길배열의 시작위치mainSrc= 옮겨질 대상의 배열mainSrcFrom = 옮겨질 배열에서 덮힐 시작위치length = 옮겨지는 배열의 수이다. 따라서 헤더와 바디를 message 배열에 넣는다고 할 때 byte[] message = new byte[header.le..
-
Logback 설정 및 사용개발/Web 2019. 3. 20. 16:28
유지보수 하던 프로젝트에서 매일 로그 기록을 일정 개수가 유지되도록 변경하게 되었다. 기존 프로젝트는 log4j를 사용하고 있었고, dailyRollingFileAppender의 날짜 포멧으로 매일 로그를 남기고 있었다. 하지만 개수를 유지하는것은 RollingFileAppender의 maxbackupindex 설정 영역이었다. log4j 1.2버전을 찾아보고, 돌다돌아 커스터마이징 한 dailyRollingFileAppender를 프로젝트에 추가해 적용시켜보았지만 잘 되지않았다. 그리고 알게 된 것이 logback이다. logback은 log4j를 만든 개발자가 더 보완해서 만든거라는 설명글을 보았다.자세한 정보는 https://logback.qos.ch/documentation.html공식 사이트 메..
-
setInterval()과 setTimeout()개발/Web 2019. 3. 6. 01:17
대쉬보드 화면을 10초와 60초 간격으로 이벤트를 발생시켜 데이터를 갱신하도록 짜 둔 페이지에서 갱신이 되지 않는 문제가 발생하였다. 이유인 즉슨 며칠간 켜둔 페이지를 setInterval()을 이용하여 주기적 실행을 해뒀는데 점점 지연으로 느려지다 멈춘 경우다. 따라서 일반적인 주기는 setTimeout() 써야하나보다. 이 둘의 특징은 정해진 시간대로 실행한다는 것이고, 차이점으로는 인터벌은 정해진 시간으로 무한 반복, 타임아웃은 한 번만 실행이다. 따라서 타임아웃을 사용하여 무한 반복을 할 경우엔 재귀함수를 사용하여 함수안에서 한번 더 호출해야 한다. setinterval() 과 setTimeout() 사용법은 같다. var interval = setInerver(함수,1/1000초);var tim..
-
React.js 공부시작개발/React.js 2019. 3. 5. 00:30
react 강좌를 인프런에서 수강하기 시작했다. react의 특징은 라이브러리라는 점이다. 따라서 가볍다. 특징들로는 react는 가상돔을 사용한다. 리액트 설명 동영상을 보면 리액트는 모델을 기억하여 작업을 매칭시키는 도구인가?? 감은 잡히지만 구체적인 정보가 필요하여 검색을 해봐야겠다. react 의 장점 - 배우기 간단(라이브러리라서?) 뛰어난 garbage collection - >메모리 관리 성능이 뛰어나다 서버 & 클라이언트 렌더링 매우 간편한 UI수정, 재사용 페이스북이 밀어준다(페이스북에서 만든 라이브러리) 다른 프레임워크나 라이브러리와 혼용가능 react의 단점 - view only(보여지는곳만 작업) -> 데이터 모델링, ajax 는 안됨 IE8 이하와 화환이 힘들다
-
어떤 수를 서로 다른 소수 3개의 합으로 표현하는 경우의 수개발/Algorithm 2019. 2. 25. 23:33
프로그래머스 사이트에서 웹 개발자 리모트 잡페어 알고리즘 테스트를 보았다. 그리고 부끄럽게도 2시간동안 한 문제도 완벽하게 풀 지 못했다. 비록 알고리즘을 따로 공부하지 않았지만 참으로 부끄러울 수 밖에 없다. 3일이 지난 후에 정리르 하며 돌아보니 어리석게도 문제를 제멋대로 해석한 것을 가장 큰 잘못이라 생각한다. 1번문제는 어느 수를 서로다른 소수 3개의 합으로 표현하는 경우의 수를 구하는 문제이다. 그런데 나는 이 문제를 주어진 수를 소수들의 합으로 만들어지는 경우의 수로 이해하였다. 3개가 아닌... 때문에 소수 3개라면 반복문 3번으로 쉽게 해결 될 문제지만 100이하의 소수만 하여도 25개가 되기 때문에 조합의 수는 소수의 n! -@(간단하게 넣을 수 있는 제약조건)로 무궁무진하다. 나는 이 ..
-
특정 행 클릭시 해당 행의 파라미터를 포함한 메소드 호출개발/Web 2018. 12. 5. 11:00
이전 프로젝트에서는 tr행에 onclick = function이름(' +변수+') 식으로 쉽게 해결되었었다. 그런데 지금 프로젝트에서는 Uncaught ReferenceError: 변수 is not defined at HTMLTableRowElement.onclick 이런 에러로 해당 변수값은 제대로 전달되었으나 정의되지않은 값으로 에러를 발생시켜 애를 먹였다. 이것에 대한 해결 방법으로는 replace로 일반값을 넣은 후 이걸 바꾸자, 는 긴 검색도중찾았지만 안되었고 혹은 포문용으로 생성된 변수 a는 전달되어 이것을 통해 받아 찾자. 라는..처음부터 떠오른 쉬운길, 하지만 좋지않은 방법이 있었다. 찾다찾다 스택오버플로우에서 https://stackoverflow.com/questions/43369314..
-
테이블 해당 열 값 가져오기 행 값 가져오기개발/Web 2017. 12. 19. 15:31
보통 행 값을 가져오는 경우는 그 행을 클릭 하여 tr값을 불러오거나 셀렉트박스에서 체크된 값을 부르는 경우가 많다. 해당 열 클릭시 그 tr을 통해cname으로 접근하여 값을 얻을 수 있다 $table.on('click', '.msginfo', function() { var $row = $(this).closest( "tr" ); var seq = $row.find('[cname=seq]').val(); var validator = $('#info_msg_form').validate(); var pdata = { "seq" : seq, }; /* 발송 대상 선택 클릭시 */ $('#btn_addCustomer').click(function(){ var validator = $('#add_cus_form..