본문 바로가기

전체 글

(129)
[Git] 터미널에서 깃 계정 정보 삭제 & 다시 세팅하기 (자신의 깃 아이디) 1. 미리 캐시저장되어 있을지 모를 계정 정보 삭제 2. 나의 Github 계정 이메일 (Github 계정 이메일) 과 이름 (본인 영문이름, Github 아이디 적는거 아님) 을 적자 → 이러면 이제 자신의 깃헙 레포지토리에 푸시하거나 풀 해올때 매번 깃헙 로그인 할 필요 없이 자동으로 로그인 됩니다.
[에러] 톰캣 404에러 - Controller 부분 확인하기 진짜 이런 실수 하면 내 정체가 뭔가 싶다 ^^.... 웹서버 톰캣으로 가동하고 localhost 쳐서 들어가려는데 계속 404에러가 뜨는거다... web.xml 설정이라던지, 스프링에서 톰캣 등록할 때 톰캣 설치된 위치 제대로 확인하고 해당 위치에 있는 톰캣으로 넣어줬고, 주소는 잘못된 게 당연히 없었는 줄 알았는데..............주소가 잘못됐었다 ㅎ.. 에러 원인 25번째 줄의 RequestMapping이 주석해제 되어있는 상태였다. 이 상태에서 localhost:8080/musicchart/song 을 치고 들어가려니까 계속 404가 떴다. 당연하다. 이 프로젝트의 ContextRoot가 musicchart 인데 RequestMapping 으로 또 musicchart를 쳐서 들어올 수 있게..
[에러] MyBatis 이용 시, DTO 객체와 테이블의 컬럼명은 동일해야한다. MyBatis는 resultType에 맞게 리턴타입을 반환합니다. 예를들어 SONG 테이블의 모든 컬럼은 SongVO의 'song_title, song_key ...' 속성값으로 처리됩니다. 좀 더 엄밀하게 말하면 MyBatis는 위의 쿼리 결과에서 song_title 이라는 컬럼이 존재하면 인스턴스의 setSong_title(); 를 호출하게 됩니다. MyBatis의 모든 파라미터와 리턴 타입의 처리는 get 파라미터명(), set 컬럼명()의 규칙으로 호출됩니다. 에러원인 해당 쿼리에 대한 데이터 값은 컬럼명을 참조하여 setSong_key(), setSong_title() .. 이런식으로 세팅이 됩니다. SELECT SONG_KEY, SONG_TITLE, REL_DATE, YOUTUBE_LINK, ..
[에러] MyBatis - selectOne으로 가지고 올 때 result가 null인 경우 처리 방법 문제원인 매퍼에 resultType = int 로 되어 있었고 DAO 에서 그 null값을 return해주려 하니깐 아예 서비스단으로 return 자체가 되지도 못했다. 아래가 문제의 코드다. 쿼리절에서 해당 조건에 만족하는 데이터가 없어서 NULL을 반환하는 상태이다. mapper.xml SELECT RANK FROM CHART WHERE SITE_NAME = #{siteName, jdbcType=VARCHAR} DAO.java public int getPreRank(Chart chart){ return sessionTemplate.selectOne("sourcemapper.getPreRank",chart); } 해결법 - null을 받아들일 수 있는 객체타입으로 바꿔준다. int → Integer m..
[AWS] 내 PC에서 RDS에 접속해보기 & EC2에서 RDS에 접속해보기 내 PC에서 RDS에 접속해보기 로컬 PC에서 RDS로 접근하기 위해서 RDS의 보안 그룹에 본인 PC의 IP를 추가해야 합니다. 내 PC의 IP EC2에 사용된 보안 그룹의 그룹 ID EC2에 사용된 보안 그룹을 RDS의 보안 그룹 규칙에 추가하는 이유는 이렇게 해야 EC2에서 RDS로 접속도 가능하기 때문입니다. 인바운드 규칙 유형에서는 MYSQL/Aurora를 선택하시면 자동으로 3306 포트가 선택됩니다. (저는 여러 명의 IP를 등록해서 양이 많지만 본인만 접근할 경우 본인 ip만 등록해주시면 됩니다) RDS와 개인 PC, EC2 간의 연동 설정은 모두 완료 되었습니다. 로컬에서 원격 데이터베이스로 붙을 때 GUI 클라이언트를 많이 사용합니다. MySQL의 대표적인 클라이언트로 Workbench..
[JEUS] JEUS의 JAVA_HOME 변경이 안될 때 일반적으로 우리는 JAVA_HOME을 변경할 때에 고급시스템 설정에서 JAVA_HOME을 추가해 줌으로써 JAVA_HOME을 잡는다. 하지만 JEUS의 경우 이미 설치된 후에 JAVA_HOME을 아무리 변경해 주어도 변경이 안된다. 알고봤더니 이미 설치된 이후에는 C:\TmaxSoft\JEUS6.0\bin\jeus.properties.cmd 파일을 열어 JAVA_HOME을 변경해 주어야 한다. cmd 파일을 여는방법은 (Windows 기준) notepad라고 앞에 적어주면 열림 C:\TmaxSoft\JEUS6.0\bin>notepad jeus.properties.cmd 여기서 JAVA_HOME 부분을 수정해주면 된다.
target 폴더 ignored 하기 (커밋시 제외시키기) 깃헙 또는 SVN에서 프로젝트를 커밋할 시 제외해야 할 파일, 폴더 들이 몇가지 있다. 대표적으로 target 폴더인데 먼저 target 폴더에 대해 알아보자면, Maven으로 빌드를 하면 생기는 jar파일을 저장하는 것이 주요 일이다. 나중에 프로젝트 결과물인 jar 또는 war를 실서버에 반영할때에는 target 폴더 밑에 있는 jar나 war를 배포하게 된다. target 폴더를 모르고 삭제했다면 Maven Build를 하여 다시 만들 수 있다. 이러한 이유들로 target 폴더는 커밋의 대상이 아니다. target 폴더 이외에 .project .classpath .setting 등도 커밋의 대상이 아니다. 먼저 이 파일들을 커밋하지 않게 ignored 시키는 방법에 대해 알아보자. Window >..
순열 (Permutation) 알고리즘의 모든 것 1~N까지 이루어진 수열을 생각해보자. 1 2 3 4 1 3 2 5 4 2 3 1 6 5 1 2 3 4 크기는 항상 N이 되어야 하고, 겹치는 숫자가 존재하지 않는다. 크기가 N인 순열은 총 N!개가 존재한다. 순열을 사전순으로 나열했을 때 N = 3인 경우에 사전순은 다음과 같다. 1 2 3 - 첫 순열 1 3 2 2 1 3 2 3 1 3 1 2 3 2 1 - 마지막 순열 첫 순열은 무조건 오름차순이고, 마지막 순열은 내림차순임을 알 수 있다. 순열을 사전순으로 나열했을 때, 사전순으로 다음에 오는 순열과 이전에 오는 순열을 찾아보자. C++ STL의 algorithm에는 이미 next_permutation과 prev_permutation이 존재하기 때문에 사용하면 된다. (이럴때마다 C++로 갈아타야..