bintray 에서 만든 gradle-bintray-plugin 로 maven central(메이븐 중앙 저장소) 에 java library 를 배포해보겠습니다.절차 요약 본인의 bintray 저장소로 라이브러리 업로드 jCenter 저장소에 link 를 겁니다. (관리자 승인 필요) jCenter 와 mavenCentral 을 sync 합니다. (관리자 승인 필요) bintray 계정 생성 계정생성 페이지 - opensource user 로 가입하세요. 기업 유저로 가입하시면 안됩니다. 삭제 기능이 있는데 입력한 내용이 있다면서 삭제가 잘안되네요. (삭제가 안되서 계정 2개 만들었습니다..ㅜㅜ) bintray user's maven repository 생성 계정 생성 후 bintray 에 로그인하고 프..
이전 글에서는 독립된 jar file 을 nexus 저장소에 올리는 과정을 포스팅 해보았습니다. 이번에는 java source 를 maven 으로 build 하고 javadoc, source 를 포함하여 deploy 하는 과정을 따라가 보겠습니다. 올리고자 하는 maven project 의 pom.xml 에 배포할 repository 정보를 추가해줍니다. khphub khphub http://nexus.khphub.com/repository/maven-releases/ ~/.m2/setting.xml 에 서버의 계정 정보를 설정해주도록 합니다. khphub khpark ***** 다음 maven 명령을 실행하면 소스를 재 컴파일하여 source 와 javadoc 을 같이 배포합니다. mvn clean d..
Nexus repository OSS 3.3 (opensource 사설 저장소) 는 외부 네트워크를 사용하기 힘든 폐쇄망 환경에서 사용하면 좋습니다. 전자정부표준 프레임워크에서 nexus 2.3 에 대해 설명하고 있는 부분도 참고하시면 좋을 것 같습니다. 또한 외부에 공개하기 힘든 라이브러리등을 배포하고 관리하기에도 용이합니다. 이것을 설치 및 실행하는 것은 비교적 쉽지만, 실제 라이브러리를 배포하고 관리하는 것은 그렇지 않습니다. nexus를 사용하기 위해서는 어느정도 프로그래밍(maven,nuget,npm etc ) 쪽에 배경지식이 있어야 가능합니다. 저는 nexus maven 저장소에 Jar(JAVA libarary)를 올려보겠습니다. (구글링으로 저처럼 단편적인 지식 가지고도 사용가능합니다. ^^..
gson + common-io 아래의 dependency libarary 를 필요로합니다. commons-io commons-io 2.4 com.google.code.gson gson 2.8.0 Gson gson = new Gson(); // list 객체 InputStream in = new URL("http://" + hostname + ":" + port + "/caseinfo?name_chk_key_di=" + caseInfoVO.getName_chk_key_di()).openStream(); String jsonString = IOUtils.toString(in,"UTF-8"); List caseInfoList = gson.fromJson(jsonString, new TypeToken(){}.g..
들어가기 redis-server 는 오픈소스로 데이터가 메모리에 저장되는 구조로 빠르게 데이터를 가져올 수 있습니다. 또한 map, list등 여러 자료구조를 제공합니다. web 분야에서 session이나 cache 정보를 저장하는 용도로 많이 사용하고, game 분야 에서는 랭킹 리스트(중요하지 않은 정보 빠르게 불러오기 위한 caching 처리) 등에 많이 사용합니다. Server 설치 redis-server 는 linux 계열을 지원하고 윈도우 OS 는 정식으로 지원하지 않습니다. 윈도우 64bit 에 설치가능한 redis for window 도 찾았지만 설치는 해보지 않았습니다. Centos7 에 설치 해보았는데 어렵지 않게 설치 하였습니다. (30분?) (공공기관에서는 광주전산센터에 설치를 요청..
1.1 프레임워크 장점- 정형화 되어있어서 일정수준의 품질을 기대할 수 있고, 유지보수가 쉽다. (프레임워크 숙달자 기준) 등1.2 프레임워크 단점- 습득시 노력과 시간이 필요하다. - 무겁다 등 2.1 스프링 장점 (다른 프레임워크에 비교)- 개발자가 기본적인 디자인 패턴 (DI, AOP, 서비스 추상화 등)을 강제적으로 사용하도록 한다.- 유연성이 좋다. 등- 각 모듈을 조립(설정만 완벽하게 하면)하면 기능을 쉽게 구현가능하다.- 모듈(기능) 추가및 제거 - 관리가 수월하다. 2.2 스프링 단점- 습득시간이 오래 걸린다.- 무겁다. model 1 방식 개발방식에 비해서 상대적으로?- 스프링 설정하는 것에만 익숙해지다보니 코딩 실력이 떨어지게됨. (스프링이 구현해 놓은걸 직접 구현하면서 코딩실력을 늘릴..
엑셀 업로드 양식 생성 회사 프레임워크에서 net.sf.jxls 라이브러리 를 사용하여 엑셀 출력을 한다. 이번에 출력해야하는 양식은 첨부한 엑셀 처럼 sheet 별로 다른 목록을 가져오는 양식이다.그러나 net.sf.jxls 로 multi sheet 에 목록을 가져 올수 있지만, 1가지 컬렉션(list) 에 대해서만 가져올수 있는 듯 했다. 그래서 찾은게 Org.jxls:jxls 이다. (http://mvnrepository.com/ 에서 jxls 검색하면 다나옴.)sheet 별로 다른 목록을 가져 올수도 있고, xml 을 사용하여 설정하는등 다양하고 유용한 기능이 많아보인다. org.jxls jxls 2.2.9Org.jxls:jxls 에서 제공하는 라이브러리는 jdk 1.7 이상을 지원한다. 그러나 ..
@ 오류 설명 아래 두 문장을 시도하였다. JSTL 과 EL 을 사용한 jsp 에서 사용할수 있는 조건 문이다. 헌데 아무리 해도 조건이 제대로 작동하지 않는 것을 감지했다. @ 해결과정 ${board.bwriterid}를 java log로 봤을때 NULL 이 찍혓고, 브라우저 (jsp)에서 봣을땐 공백으로 나왔다. 아무리 봐도 틀린 곳을 찾을수 없었다. 그래서 egov예제등 다른 source를 열어서 내가 작성한 조건문과의 차이점을 발견하려 애썻다. # 해결 ""(쌍따옴표)안에 공백이 포함되면 안나온다. test="${!empty board.bwriterid} " >>> 안되고 test="${!empty board.bwriterid}" >>> 된다 $ 여담 가지고 있는 소스를 복사해서 붙혀넣고 수정하면..