본문 바로가기

분류 전체보기

(161)
[WEB기초] 재스퍼(Jasper), 카탈리나(Catalina) 톰켓의 컴포넌트 이름 : 톰켓(Tomcat), 카탈리나(Catalina), 재스퍼(Jasper) 카탈리나(Catalina) : 서블릿 컨테이너. 자바 서블릿을 호스팅하는 환경 재스퍼(Jasper) : 톰캣의 JAP 컴포넌트. 실제로 JSP 페이지의 요청을 처리하는 서블릿. 톰캣(Tomcat) : 카탈리나, 재스퍼와 서버를 시자하고 멈추는 배치 파일들, 예제 애플리케이션 등으로 구성됨. 1. 톰캣 카탈리나 톰캣은 여러개의 컴포넌트로 구성된다. 톰캣의 코어 컴포넌트는 카탈리나이다. 카탈리나는 톰캣의 서블릿 스펙의 실질적인 구동을 제공한다. 톰캣 서버를 가동시킬 경우, 카탈리나를 구동시킨 것이라 생각하면 된다. 카탈리나 기본 동작은 톰캣의 6개 config 파일을 편집하여 구현/제어할 수 있다. 1) cata..
[WEB기초] HTTP, AJAX, Web Socket HTTP는 통신 제약이 있는 약속입니다. AJAX로 HTTP의 통신 제약으로부터 조금 벗어날 수 있었습니다. Websocket은 HTTP의 통신 제약을 해결한 새로운 약속입니다. 1. HTTP(Hyper Text Transfer Protocol) HTTP의 앞 두글자 Hyper Text는 HTTP가 등장하기 이전 세대에서 통신한다 함은, 터미널 창에서 딱딱한 텍스트를 주고 받는 것이였다. HTTP의 뒤 두 글자 Transfer Protocol. HTTP의 대전제는 “URL 및 부가정보를 통해 사용자가 원하는 페이지를 서버에 요청한다, 그리고 서버는 해당 요청에 응답한다” 이다. -> 사용자가 URL을 요청할 때만 서버에서 해당 페이지를 꺼내준다. 즉, 브라우저가 웹서버에 무엇인가를 요청하려면, 페이지를 ..
[Javascript] JSON 기초 1. JSON이란 - JSON은 JavaScript Object Notation의 약자이다. - 데이터를 쉽게 교환하고 저장하기 위하여 만들어진 텍스트 기반의 데이터 교환 표준이다. 2. JSON의 특징 - 자바스크립트를 확장하여 만들어졌다. - 자바스크립트 객체 표기법을 따른다. - 사람과 기계가 모두 읽기 편하도록 고안되었다. - 프로그래밍 언어와 운영체제에 독립적이다. * JSON표기법과 프로그래밍 언어별 지원 라이브러리에 대한 자세한 사항은 다음 링크를 참고 www.json.org/json-ko.html JSON JSON (JavaScript Object Notation)은 경량의 DATA-교환 형식이다. 이 형식은 사람이 읽고 쓰기에 용이하며, 기계가 분석하고 생성함에도 용이하다. JavaScr..
[Java] BigInteger, BigDecimal 클래스 1. BigInteger 정수형으로 표현할 수 있는 값의 한계가 있다. 가장 큰 정수형 타입인 long으로 표현할 수 있는 값은 10진수 19자리 정도이다. 이 값 보다 더 큰 값을 다뤄야 할 때 사용하면 좋은 것이 BigInteger이다. 내부적으로 int배열을 사용해서 값을 다룬다. 그래서 long타입보다 훨씬 큰 값을 다룰 수 있지만 성능은 떨어진다. docs.oracle.com/javase/7/docs/api/java/math/BigInteger.html BigInteger (Java Platform SE 7 ) Immutable arbitrary-precision integers. All operations behave as if BigIntegers were represented in two'..
[Java] StringTokenizer 클래스 긴 문자열을 지정된 구분자(delimiter)를 기준으로 토큰(token)이라는 여러 개의 문자열로 잘라내는 데 사용된다. 예를 들어 "100,20,300,400"라는 문자열이 있을 때 ','를 구분자로 잘라내면 "100","200","300","400"이라는 4개의 문자열(토큰)을 얻을 수 있다. 물론 String의 split(String regex), Scanner의 useDelimiter(String pattern)를 사용할 수도 있다. 이 두가지 방법은 정규식 표현(Regular expression)을 사용해야하므로 정규식 표현에 익숙하지 않은 경우 StirngTokenizer를 사용하는 것이 간단하면서도 명확한 결과를 얻을 수 있을 것이다. docs.oracle.com/javase/7/docs/..
[Java] 래퍼(Wrapper) 클래스, 정규식(Regular Expression) 자바의 자료형은 크게 기본 타입(primitive type)과 참조 타입(reference type)으로 나누어진다. 기본 타입은 char, int ,float, double 등이 있고 참조 타입은 class, interface 등이 있다. 프로그래밍을 하다 보면 기본 타입의 데이터를 객체로 다뤄야 하는 경우가 있다. 이 때 사용되는 것이 래퍼(wrapper)클래스이다. 자바는 모든 기본타입(primitive type)은 값을 갖는 객체를 생성할 수 있다. - 오토박싱(AutoBoxing)&언박싱(Unboxing) 기본 타입의 값을 포장 객체로 만드는 과정을 박싱이라고 하고 반대로 포장객체에서 기본타입의 값을 얻어내는 과정을 언박싱이라고 한다. 기본타입 값을 직접 박싱, 언박싱하지 않아도 자동적으로 박싱..
[Java] 날짜와 시간 & 형식화 1. 날짜와 시간 1.1 Calendar와 Date JDK 1.8부터 'java.time패키지'로 기존의 단점들을 개선한 새로운 클래스들이 추가되었다. - Calendar와 GregorianCalendar * Calendar를 상속받아 완전히 구현한 클래스로는 GregorianCalendar(오늘날 전세계 공통으로 사용하고 있는 그레고리력에 맞게 구현한 것)와 BuddhistCalendar가 있는데, getInstance()는 시스템의 국가와 지역설정을 확인해서 태국인 경우에는 BuddhistCalendar의 인스턴스를 반환하고, 그 외에는 GregorianCalendar의 인스턴스를 반환한다. - Date와 Calendar간의 변환 Calendar가 새로 추가되면서 Date는 대부분의 메서드가 'dep..
[Java] java.lang패키지와 유용한 클래스1 1. java.lang패키지 1.1 Object클래스 모든 클래스의 최고 조상이기 떄문에 Object클래스의 멤버들은 모든 클래스에서 바로 사용 가능하다. 1) protected Object clone() - 객체 자신의 복사본을 반환한다. - Object클래스에 정의된 clone()은 단순히 인스턴스변수의 값만을 복사하기 때문에 참조변수 타입의 인스턴스 변수가 정의되어 있는 클래스는 완전한 인스턴스 복제가 이루어 지지 않는다. ex. 배열의 경우, 복제된 인스턴스도 같은 배열의 주소를 갖기 때문에 복제된 인스턴스의 작업이 원래의 인스턴스에 영향을 미치게 된다. 이런 경우 clone메서드를 오버라이딩해서 새로운 배열의 내용을 복사하도록 해야한다. 2) public boolean equals(Obecjt ..