2018년 6월 11일 월요일

analysis http server (JLHTTP) source for upload in android (파일 upload를 위한 웹서버 소스 코드 분석)


java로 웹서버를 간단하게 만드는 것은 어렵지 않습니다. 그러나 전체 기능이 제대로 구현된 소스는 많지 않고, 대부분 서블릿이나 JSP에 촛점이 맞추어져 있어서 원하는것을 찾기가 쉽지는 않습니다.

여기에서 알아보고자 하는것은 아래와 같습니다.

1. java로 구현된 http 서버(JLHTTP) 소스 동작 모습 (이번 내용)


2. 파일 upload를 하게되면 소스코드 어디 에서 처리를 하는지? (다음 내용)


이 글을 쓰는 목적은 웹방식의 응용프로그램을 만들기 위함입니다. 최종 사용자가 보면 local web server를 접속하게되고 브라우저를 오픈하여 특정 파일들을 선택해서 submit 을 하면 처리하여 web page로 결과를 돌려주는 동작입니다.
이것을 위해서 왜 web 방식을 해야하는지는 중요하지 않습니다. 아주 특별한 환경에서 처리를 위해서, 다만 이것을 위해서는 JSP 또는 서브릿을 사용해도 관계는 없지만, 구현 환경을 최대로 단순하게 처리하기 위해서 입니다.


소스 얻기

JLHTTP https://www.freeutils.net/source/jlhttp/
License 는 GPL 입니다. 코드는 공개되어 있지만 사용시 코드를 공개해야하는 라이센스입니다.

소스 폴더 구성

받은 소스는 java소스 하나와 jar 파일 하나로 구성되어있습니다. 아래와 같이 배치되도록 프로젝트를 만듭니다. (lib의 jar 파일은 필요가 없어도 실행하는데 문제가 없었습니다.)


실행하기

실행시키기 위해서는 인자가 2개가 필요합니다. 홈페이지 폴더와 서버 포트 번호입니다.


브라우저로 다음 주소를 접속합니다. http://localhost:8080/
실행하면 아래와 같이 볼 수 있습니다. (8080 서버 포트는 실행시 두번째 인자 입니다.)

이 소스는 html 만 지원되는 소스입니다. server side script 또는 cgi 등을 지원하지 않습니다.

















댓글 없음:

댓글 쓰기