분류 전체보기

    Spring - 파일 업로드 하기

    Spring - 파일 업로드 하기

    스프링 프레임 환경에서 파일 업로드 하는 법을 기록하도록 하겠다. 먼저 https://search.maven.org 에 접속하도록 하자 fileupload라고 치면 이러한 결과가 나온다 commons-fileupload의 버전명을 클릭하자 그러면 이러한 화면이 나온다 우리는 아파치 메이븐을 사용할 것이므로 저 코드를 복사하여 pom.xml에 붙인다. 귀찮은 사람들을 위해 여기도 남긴다. commons-fileupload commons-fileupload 1.3.3 이제 라이브러리 추가는 됬고 dispatcher-servlet.xml 을 찾아가자 (intellij의 경우 servlet-context.xml) 빈즈 안에 위와 같은 코드를 쳐놓는다.스프링이 멀티파트 영역을 관리하게끔 빈으로 설정해놓는것이다. ..

    게시판 페이징 처리에 대해서

    처음 게시판을 만들 때 가장 고민되는 것은 역시 페이징 처리를 어떻게 하느냐의 문제일 것이다. 이 페이지에서는 그 부분을 다뤄보도록 하겠다 먼저 우리는 페이지의 기준을 잡아야한다. 현재 페이지가 몇페이지인지, 페이지에 몇개의 게시글을 보여줄 것인지를모니터링 하는 클래스를 하나 만들자 public class PaginationCriteria { private int page; // 현재 보고 있는 페이지 private int numsPerPage; // 한 페이지에 보여줄 게시글 갯수 public PaginationCriteria() { this.page = 1; this.numsPerPage = 10; } public PaginationCriteria(int page, int numsPerPage) { ..

    Spring에서 mybatis 사용법

    Spring에서 mybatis 사용법

    mybatis는 sql 명령어를 관리해주는 편리한 라이브러리이다. sql 명령어를 매번 우리는 문자열로 지정해서 하나하나 적어주는 방식을 취했을 것이다. 이러한 명령어는 유지보수에서도 많은 노력이 필요할 가능성이 높고, 효율성이 떨어진다. 때문에 mybatis를 통해 관리해 주는 것이 좋다. 메이븐 스프링 개발환경에서는 설정도 간단하다. 먼저 pom.xml에 라이브러리를 추가하도록 하자 org.mybatis mybatis 3.4.5 org.mybatis mybatis-spring 1.3.1 org.springframework spring-jdbc ${org.springframework-version} mybatis와 mybatis를 연동하는 스프링 그리고 스프링과 jdbc를 연결하는 라이브러리이다. my..

    intellij 에서 JRebel 추가하기

    intellij 에서 JRebel 추가하기

    intelliJ에서 스프링을 코딩하다 보면 컨트롤러는 어쩔 수 없더라도 jsp가 업뎃이 안되는게 참 짜증난다. 이클립스는 조금 느려도 자동으로 서버가 재시작되는데 intellij는 그런 기능이 없다.(내가 못찾는 것일지도) 때문에 JRebel을 이용하면 좋다. JRebel은 좋기 때문에(?) 상용 소프트웨어이다. 영리 목적을 위해서는 구입을 해야되지만 학생이나 개인이 영리목적이 아닌 사유로 사용할 때에는 무료로 제공해주고 있다. 그 사용방법을 정리한다. 먼저 https://my.jrebel.com/ 접속하자 이런 페이지가 나온다 페이스북이나 트위터로 생성해서 받도록 하자 로그인 하자. 없다면 페이크계정이라도 하나 만들자. 페이스북 인증만으로도 개발자는 많은 툴의 인증을 받을 수 있다. 그리고 캡쳐는 없으..

    링크 저장

    http://www.sys4u.co.kr/Mail/ECTrendReport/20130524/20130524-05.htm 자료의 시각화

    안드로이드 복습 1 - Text와 Button 띄우기

    안드로이드 복습 1 - Text와 Button 띄우기

    안드로이드 배운 자료를 처음부터 복습하려는 마인드로 진행하려고 한다. 내가 보기 편하게 작성할 생각으로 진행할 것이니 아마 다른사람도 보기 쉬울 것이라 생각한다.웹은 중간부터 적기 시작해서 처음보는 사람들은 좀 힘들 것이라 생각했는데안드로이드의 경우 무리 없이 따라할 수 있을 것이라 생각한다. 안드로이드 스튜디오 설치 및 환경 설정의 경우 다른 게시물이 많으니 생략한다그리고 나는 자바언어로 진행할 것이다. 먼저 설치와 세팅을 끝냈으면 이런 페이지일 것이다. 프로젝트를 생성하자. 어플리케이션 이름은 앱의 이름을 의미한다. 적당히 지우주자. 근데 3에서 보이듯이 공백이 들어간게 안되는 건 아니지만 개발 도구에 문제를 일이킬 수도 있으니 공백은 되도록 빼는게 좋다. 2는 프로젝트 경로를 말한다. 적당히 설정해..

    Spring 프레임워크에서 Oracle을 사용하기

    Spring 프레임워크에서 Oracle을 사용하기

    이번 페이지에서는 스프링 프레임워크에서 오라클을 사용하기 위한 방법에 대해 기록할 것이다. 스프링에서 오라클을 사용하기 위해서는 먼저 Oracle JDBC driver를 로컬 메이븐 저장소에 추가해주어야 한다. 왜 maven이 드라이버를 직접 추가하지 못하나 의문이 들어 찾아보았더니 maven과 oracle의 저작권 문제 때문이라는 글을 보았다. maven에서 oracle 드라이버를 직접 활용한다면 법률분쟁의 소지가 있어 우리가 메이븐 인스톨러를 직접 다운 받고, 레포지토리에 추가해줘야 해주고 라이브러리로 참고해야한다는 이야기이다. 순서대로 해보자 먼저 메이븐 인스톨러를 다운받는다 https://maven.apache.org/download.cgi 밑의 파일을 다운받아 준다. 그리고 적당한 곳에 압축을 ..

    junit을 통한 테스트 클래스 만들기

    junit을 통한 테스트 클래스 만들기

    이클립스던 intellij던 Spring을 만들었을 때디렉토리에 test라는 폴더가 보였을 것이다 이 테스트 폴더에 우리가 클래스를 생성하여테스트 서버를 설정하여 자료의 입력이 정상적으로 구동되는지 확인할 수 있다. 만약 실무에서UI 담당자가 일처리를 늦게해 UI를 이용할 수 없다면 자바 개발자가 기껏 코드를 만들어도 테스트 할 수 없는 경우가 생길 것이다. 이러한 상황에 대처하기 위해 Test클래스를 이용하는 것이다. 먼저 Test클래스를 위한 junit 라이브러리를 다운받도록 하자 junit은 이전에 포스팅 했던 MVNrepository에서 다운이 가능하다 https://mvnrepository.com/search?q=junit 여기서 다운을 할 수 있다 클릭해서 들어가서 추가하도록 하자 메이븐 코드..

    @ResponseBody, jackson-databind 라이브러리 활용

    @ResponseBody, jackson-databind 라이브러리 활용

    이 포스팅에서는 @ResponseBody와 jackson을 활용해보도록 하겠다. 코드는 다음과 같다. @Controller public class controller3 { private static final Logger logger = LoggerFactory.getLogger(controller3.class); @RequestMapping(value = "/rb-test") @ResponseBody public String testString() { logger.info("testString() 호출"); return "Hello, Spring!"; } @RequestMapping(value = "/json-test") @ResponseBody public Product testJson() { log..

    MVC Patterns 기본적 컨트롤러 생성 / redirect 활용

    MVC Patterns 기본적 컨트롤러 생성 / redirect 활용

    여기서는 저번에 생성한 프로젝트를 바탕으로 기본적인 패턴을 연습삼아 만들어 보도록 하겠다. 밑의 product를 먼저 이야기하자면 private int pid; // 상품아이디 private String pname; // 상품 이름 private int price; // 상품 가격 이런 형태의 모델 클래스이다.getter/setter와 생성자는 길어서 뺏다. 저번에 만든 컨트롤러 클래스에서 controller를 만들었다.코드는 아래와 같다. @Controller public class controller { // 1 private static final Logger logger = LoggerFactory.getLogger(controller.class); // 2 @RequestMapping(value..