개발 251

Pool 에러(Cannot get a connection, pool error Timeout waiting for idle object)

프로젝트를 진행하다 에러가 발생하였다. Could not open JDBC Connection for transaction; nested exception is org.apache.tomcat.dbcp.dbcp.SQLNestedException:Cannot get a connection, pool error Timeout waiting for idle object' 원인파악Connection Pool 이 서로 겹치는 현상으로 추정된다.톰캣의 server.xml 을 확인해보니maxActive="4" maxIdle="2" 로 구성되어 있었다. maxIdle : 사용되지 않고 Pool에 저장될 수 있는 최대 connection 수(음수일 경우 제한 없음)maxActive : 최대 active connectio..

개발/was 2017.10.16

[git] 이클립스(eclipse) 연동하여 처음 사용하기

이전에 git Bash를 통해 저장소를 생성하고, commit 해보고branch까지 만들어 보았습니다. [개발/개발도구] - [git] 이클립스(eclipse) 연동하여 처음 사용하기[개발/개발도구] - [git_ignore 처리하기] 불필요한 파일 제외시키고 Commit[개발/개발도구] - [git] 브랜치(branch)만들고 합치기(merge)[개발/개발도구] - git update 받기(pull, fetch, merge)[개발/개발도구] - git 저장소 만들고 커밋(commit) 하기[개발/개발도구] - [git 설치] github 처음 사용기 다른 프로젝트를 진행하게 되면 git Bash로도 깔끔하게 진행되지만eclipse와 git을 연동하여 사용할 빈도수가...왠지 많을 것 같아eclipse와..

개발/git 2017.10.14

java static 변수에 대한 기초 개념 이해!

자랑하는건 아니지만... 현재 개발 3년차 입니다.그런데 가끔 프로젝트를 진행하다보면 아주 기초적인 개념 등을 몰라서어리둥절한 경우를 겪게 됩니다. 이번에는... static 변수!제가 알기로는 static 변수는 객체를 생성하지 않아도 접근이 가능하다... 정도?그래서 프로젝트에서 관련 클래스안에 static으로 선언하여 몇번 사용하곤 했습니다. 그래도...나름 개발자인데!알고 사용해야하지 않는가! 라는 생각에 정리해두기로 하였습니다. static 변수클래스 변수이다.클래스가 정의만 되어도 접근이 가능한 변수(인스턴스 변수는 인스턴스가 생성되었을때 접근 가능) class InstCnt { static int instNum=0; public InstCnt() { instNum++; System.out.p..

개발/java,spring 2017.10.12

postgresql loop update 함수 만들기

안녕하세요 ~!요즘 postgresql을 빈번하게 사용하고 있습니다.그런데 프로시저가 필요한 상황이 되었는데 ~!그동안 함수는 만들어 사용하고 있어서 당연히 프로시저도 있는줄 알았습니다.그런데 따로 프로시저가 없다는 사실! 즉, create procedure이 아닌 create function 을 이용한다는 뜻 입니다. 먼저 기본 함수 생성 문을 정의해 두었습니다. 함수 선언문CREATE OR REPLACE FUNCTION 함수이름 (in_data character varying) RETURNS void AS$BODY$DECLARE v_row record; v_text TEXT; idx integer; BEGINdelete from testDB where v_text = in_data; END; $BOD..

개발/DB 2017.10.10

[git_ignore 처리하기] 불필요한 파일 제외시키고 Commit

현재 필자는 git을 처음쓰며 하나하나 포스팅해나가고 있습니다.이제껏 포스팅한 내용입니다. [개발/개발도구] - [git 설치] github 처음 사용기[개발/개발도구] - git 저장소 만들고 커밋(commit) 하기[개발/개발도구] - git update 받기(pull, fetch, merge)[개발/개발도구] - [git] 브랜치(branch)만들고 합치기(merge)[개발/개발도구] - [git] 이클립스(eclipse) 연동하여 처음 사용하기 오늘의 포스팅 주제는 git에서 commit을 할때 불필요한 파일들을 제외 시키는 것입니다.바로 캡쳐한 화면을 보겠습니다. 빨간 동그라미 친부분으로 보면굉장히 파일들이 많습니다.필자는 main.java 한개만을 변경한 상황 입니다. 현재 프로젝트에서 svn..

개발/git 2017.10.05

[git] 브랜치(branch)만들고 합치기(merge)

드디어 브랜치를 실습할 시간이 왔습니다.이전에 학습했던 내용 첨부하겠습니다. [개발/개발도구] - git update 받기(pull, fetch, merge)[개발/개발도구] - git 저장소 만들고 커밋(commit) 하기[개발/개발도구] - [git 설치] github 처음 사용기 현재 필자는 svn을 사용중에 있습니다.svn 사용중에도 commit 이력을 확인 할 수 있습니다.이에 저는 이렇게 생각했습니다.'branch? 뭐 대충 commit 이력 남아있겠지' 라고 말입니다.하지만 이번에 실습을 하면서왜 git의 branch 인가!를 크게 느꼈습니다.말하자면 신세계를 보았습니다. git의 branch의 개념이 뭐다! 라고 정확히 말할 수는 없습니다.저도 처음 배우기때문에....하지만, branch를..

개발/git 2017.10.02

이클립스 >>>, 해, ||등 이상한 문자...사실은 공백처리!

갑자기 이클립스에 이상한 현상이 발생하였습니다. >>, 무슨 해모양..|| 이런것들!!!처음에 바이러스를 먹은줄알고 엄청 당황했습니다. 컴퓨터 껐다 키면 괜찮아 지겟지...그러나 현상은 그대로... 그때 눈치 챘습니다.내가 무언가를 잘못 눌렀구나! 해법 제시하겠습니다. 이클립스에서Window - Preferences를 클릭하면 다음과 같은 화면이 출력됩니다. 그리고 두번째!Gerneral - Editors - Text Editors로 이동합니다. 마지막으로 빨간색으로 밑줄친 부분!Show whitespace characters를 해제 하시면 됩니다.

개발/개발도구 2017.09.28

자바 가상머신(jvm) 메모리 모델, 개념 이해하기

안녕하세요 ~! 이번 포스팅에서는 자바 가상머신(JVM)에 관련된 이야기를 해볼까 합니다.사실 static에 대한 개념을 공부하던 중 jvm관련 개념을 알아야 할거같아 jvm부터 포스팅 하게 되었습니다. 사실 static에 대한 공부를 하고 포스팅 정리하는 중입니다단지, jvm의 간략한 개념을 먼저 이해하는게 도움이 되서 먼저 포스팅 할 뿐! 먼저 의문점!'메모리 관리는 운영체제가 하는 건가요?' 아니면'가상머신이 하는 건가요?' 보통 이런 문제는 신경쓰지 않고 넘어가게 되는데메로리 관리의 이해는 프로그래머에게 중요하다는 사실을 요즘들어 느끼고 있습니다. 메모리에 대한 답변운영체제가 자바 가상머신에 메모리를 준다. ex) 4GB 자바 가상머신은 4GB를 본인이 알아서 사용한다. 그렇다면 자바 가상머신은 ..

개발/java,spring 2017.09.24

git update 받기(pull, fetch, merge)

안녕하세요.현재 필자는 svn을 사용하고 있어 git update 받기라는 표현을 썼습니다.현재 git에 대한 공부를 처음하고 있으므로.....포스팅은 초보자 분들을 위한 것입니다.이전에 git설치와 commit 방법에 대해 알아보았습니다. [개발/개발도구] - [git 설치] github 처음 사용기[개발/개발도구] - git 저장소 만들고 커밋(commit) 하기 이어서 오늘은 update를 받는 방법에대해 포스팅을 하겠습니다.git 표현으로는 pull!! 혹은 (fetch + merge) 입니다. 위의 사진은 이전에 git에서 만들어 두었던 Reame.txt 파일입니다. 파일을 열고 내용을 변경하겠습니다.저는 '변경 작업 실시' 라는 문구를 적고 저장하였습니다. 그리고 push를 하고 github에..

개발/git 2017.09.18

자바 선택정렬(select sort)

평소 알고리즘 공부를 해야지 ~ 해야지 하고 생각하고 있다가.드디어 정리를 하게 됩니다. 선택정렬 개념첫번째 위치의 숫자와 두번째,세번째, 네번째로 계속 뒷자리 숫자와 대소비교를 합니다.그리고 작은 숫자와 자리를 변경합니다. 예시초기 데이터 : 8,3,6,2,10,4 실행 : step01 8,3,6,2,10,4↑첫번째 데이터 8을 기준으로 그다음 데이터 3과 비교3,8,6,2,10,48과 3의 자리 변경 그다음 데이터 6과 비교(변화없음)그다음 데이터 2와 비교(자리변경)2,8,6,3,10,4 그다음 데이터 10과 비교(변화없음)그다음 데이터 4와 비교(변화없음) step022,8,6,3,10,4 ↑이다음에는 두번째 위치의 숫자 8부터 대소비교를 시작합니다. 소스코드 첨부합니다. /** 1. index가..

개발/java,spring 2017.09.16