예전에는 API를 통해 데이터 하나를 받아오려면 Apache의 HttpClient를 이용해서 긴긴 코딩을 해줬어야 했다. 이제는 Spring의 RestTemplate을 사용하면 단 몇 줄로 코딩이 끝난다. 다음은 URL로 요청해서 받아오는 XML 데이터를 처리하는 예제다. Controller @Controller @RequestMapping({"/member"}) public class MemberController { @RequestMapping({"/memberList.do"}) public String memberList(Model model) { // Xml데이터를 response받을 API주소 String uri = "API주소"; // RestTemplate 생성 RestTemplate res..
한동안 DB작업만 하다가 오랜만에 코딩할 일이 생겨서 JavaFX를 알아봤다. 데이터 가공 중에 노가다가 싫어서(;;) 많은 양의 텍스트를 한번에 처리하는 프로그램을 만들려고 보니, 이왕이면 UI가 있으면 좋겠다 싶었다. Java 1.8에 대응하는 JavaFX를 써보고 싶기도 했고. 아래는 이클립스에서 JavaFX를 프로그래밍하는 기본 예제다. 프로젝트 우클릭 → Build Path → Configure Build Path.. → Add External JARs... 클릭 → jfxrt.jar 파일을 추가한다. Order and Export 탭으로 옮겨가서 jfxrt.jar를 최상단에 놓는다. javafx.application.Application을 상속받는 클래스를 생성한다. ▼ MainClassimp..
전자정부프레임워크의 Pagination 사용하지 않고, 쌩노가다 페이징 처리하기. 어쩌면 이게 더 편하기도... 바로 이렇게 게시글 목록 아래에 나오도록. CSS는 알아서 입히시길. * 주의점 - StringUtils 사용할 때 commons-lang.jar를 살짝 의존함. - 쿼리는 오라클,mybatis를 기준으로 작성하였음. (mysql은 limit가 있어서 페이징 처리하기가 무척 편하다) - list.jsp에서 paging.jsp를 include하는 부분, page 속성에는 paging.jsp의 경로를 제대로 써줘야 함. - 게시글 목록을 조회할 때에 쿼리에서 Paging관련 파라미터 뿐만 아니라, 게시글 관련 파라미터도 넘겨야할 경우.. PagingDTO를 상속받는 BoardDTO를 만들어서 하든..
다운로드☞ https://www.mongodb.org/downloads MSI파일을 다운로드 받는다. 다운로드 받은 파일을 실행시켜서 Next, next, next.... Finish. 몽고DB가 설치된 폴더의 bin 폴더까지 이동해서 전체 경로를 복사한다. 환경변수의 시스템 변수 Path 세미콜론 뒤에 복사해뒀던 경로를 붙여넣고 확인. cmd창에 mongod를 쳐보자. 그럼 data 폴더를 찾지 못한다는 에러가 뜬다. mongod --dbpath [data폴더 전체 경로] 적당한 곳에 data를 저장할 폴더를 만들고 위와 같이 명령어를 입력한다. 그리고나서 다시 mongod를 치면, 뭔가가 실행되면서 만들어놨던 폴더에 위와 같이 폴더와 파일들이 생성됨을 확인할 수 있다. cmd창의 로그를 살펴보면 po..
입력 값에 대한 검증을 일일히 자바스크립트 코드를 짜서 검증하기란 여간 귀찮은 일이 아니다. jquery validation을 이용하면 아주 편리하게 입력 값에 대한 검증이 가능하다. 메시지를 한 곳에 모아놓을 수 있고, 다국어 지원도 한다. 다운로드 ☞ http://jqueryvalidation.org/ 필요한 js 파일은 기본적으로 jquery 파일이 있어야 하고, jquery.validate.js와 jquery.validate.min.js 중에 하나를 추가해준다. 총 2개의 js 파일이 필요하다. 여기에 메시지 관리나 다국어 메시지를 사용하고 싶다면, dist/localization에 있는 메시지js 파일들을 추가한다. 신용카드 번호 검증과 같은 additional-method 검증 메서드를 사용하..
POI 라이브러리 사용.org.apache.poipoi3.10-FINALorg.apache.poipoi-ooxml3.10-FINAL * Java Sourcepublic void excelDataInsert(String fileFullPath){File file = new File(fileFullPath);FileInputStream inputDocument = null;Workbook workbook = null; try {inputDocument = new FileInputStream(file);if (file.getName().toLowerCase().endsWith("xlsx")) { // 엑셀 파일의 확장자(버전)에 따라서 생성해야 할 Workbook 객체가 다르다.workbook = new XS..
예전에 cos.jar를 이용한 파일업로드 방법을 포스팅한 적이 있는데(http://zero-gravity.tistory.com/168), 이번엔 스프링에서 제공하는 CommonsMultipartResolver를 이용한 파일업로드 방법을 소개하겠다. cos.jar는 상용으로 사용하려면 라이선스를 구입해야 한댄다. 물론 몰래 사용해도 걸릴 확률은 극히 없지만, 양심상..ㅡ.ㅡ;; * Spring bean 설정 파일에 CommonsMultipartResolver 빈 등록 property는 이클립스 코드어시스트로 받아보면 대략 알 수 있을 것이다. 필자는 파일 용량 제한하는 것만 사용했음. * JSP * Controller @RequestMapping("/uploadFile.do") public String u..