개발노하우/Java
-
웹 프로젝트 수행중 발생한 이슈 처리개발노하우/Java 2016. 1. 14. 11:14
ASP를 JAVA로 전환하는 프로젝트를 수행하게되었다... 스트레스 테스트도 충분히 마치고 memory leak 도 없이 잘 처리되는것을 확인하였는데도 불구하고 상용 서비스에 돌입하자 점차 메모리 사용률이 올라감과 함께 swap도 점차 증가 추세임을 확인..!!! GC옵션도 보고....소스상에서 메모리 누수가 있을만한 부분도 다시 보고.... 혹시나 싶어 세션 클러스터링쪽을 주구장창 뒤져봤지만....괜한 옵션질을 해서;;;오히려 장애가 발생;;; 임시로 한달간 보름에 한번씩 서버를 리부팅해서 swap을 빼줬으나 다시 차오르는 swap (내가 왜 처음부터 네트워크쪽은 신경도 안썼는지..ㅜㅠ..애먼곳만 바라봤으니...어휴...) 우연하게??(가....아니겠지..) 배치서버가 ssh 접속이 불가한 현상이 발생..
-
POJO(Plain Old Java Object) 란?개발노하우/Java 2010. 12. 3. 23:37
Java진영에서 어느날 갑자기 등장하여 개발자들을 모호하게 만들어 버렸던 POJO!! 이 녀석이 당췌 뭐야? 많은 사람들은 그럴싸한 이론으로 POJO를 포장하려 한다. 실제 강의나 책을 통해서 설명되는 POJO는 이해하기 힘듬. ㅜㅜ 본인 또한 처음 POJO란 용어를 접했을때 이게 뭐지? 직역하면 명백히 오래된 자바 객체? 아쒸 명백히 오래된 자바객체가 한두개야? jdk 1.0 버전때 부터 제공되던 수 많은 클래스들을 통해 생성하는 객체들이 그럼 다 POJO야? POJO는 2000년 9월에 열린 컨퍼런스(어떤 컨퍼런스인지는 모름)에서 Rebecca Parsons, Josh MacKenzie, Martin Fowler 가 처음 사용한 용어이다. 다른 개념 다 버리고 POJO = Java Beans 여기서 ..
-
[JSP] request 기본 객체개발노하우/Java 2010. 8. 21. 17:23
- request 기본 객체는 JSP의 기본 객체로서 웹 브라우저의 요청과 관련이 있다. - request 기본 객체 제공 기능 클라이언트(웹 브라우저)와 관련된 정보 요청 서버와 관련된 정보 요청 클라이언트가 전송한 요청 파라미터 읽기 기능 클라이언트가 전송한 요청 헤더 읽기 기능 클라이언트가 전송한 쿠키 읽기 기능 속성 처리 기능 메서드 리턴 타입 기 능 getRemoteAddr() String 웹 서버에 연결한 클라이언트의 IP주소를 구한다. getContentLength() long 클라이언트가 전송한 요청 정보의 길이를 구한다. 전송된 데이터의 길이를 알 수 없는 경우 -1을 리턴한다. getCharacterEncoding() String 클라이언트가 요청 정보를 전송할 때 사용한 캐릭터의 인코..
-
JMS API개발노하우/Java 2010. 8. 9. 21:32
####################################### # JMS(Java Message Service) API ####################################### - JMS API는 애플레케이션에서 메시지를 생성하고 전송하고 전송받고 읽는 기능을 구현할 때 사용하는 Java API이다. - 메세징은 느슨한 연결(Lazy Connection)되어 있는 분산 처리 시스템의 통신방법이다. - 메시징은 보내는 쪽이 직접 메시지를 받는 쪽에 전달하는 것이 아니라 "목적지"라는 특별한 저장소로 전달하는 것이기 때문에받는쪽에 대한 어떠한 정보도 알 필요가 없다. 마찬가지로 받는 쪽에서도 보내는 쪽의 정보를 알 필요 없이 목적지로부터 메시지를전달받으면 된다. 따라서 보내는 쪽과 받..
-
생성자를 이용한 멤버변수 접근개발노하우/Java 2010. 3. 22. 16:36
- 모델링에서 가장 중요한것은 정보의 은닉이며 - 접근지정자 private 를 사용하여 다른 객체가 나의 변수를 함부로 접근하게 하지 못하게 한다. 1. StartCraft.java package com.tistory.edkoon.smp3.privateValue; /** * @author EuiGine * */ public class StarCraft { private int Mineral; private int Gas; private int population; public StarCraft(){ //디폴트 생성자 //리턴타입은 없음. } //생성자 오버로딩 public StarCraft(int m, int g, int p){ this.Mineral = m; this.Gas = g; this.popul..
-
Abstract Class [추상클래스]개발노하우/Java 2010. 3. 22. 13:07
- 객체들의 공통된 개념만을 표현하기 위한 클래스가 추상클래스 - 작업의 레벨 분할을 위해서 사용 - 부모가 난 정의를 못내리것다 하면 정의를 안하고 자식에게 시키는것 이게 abstract - 추상메서드(메서드의 body가없는 메서드) - 반드시 상속받은 하위클래스에서 구현해야한다(body를 만들어야한다) - 반드시 상속받은 하위클래스에서 재정의를 해야한다. - 불안전한 메서드=깡통 - 추상메서드를 한개라도 포함한다면 추상클래스가된다 - 추상클래스는 50%구현 /50% 설계,디자인 할때사용 - 다형성을 일부 보장하기위해서 사용 - 자식은 반드시 재정의를 해야하기때문 강제성과 통일성이있다. - 추상클래스는 기능이 비슷한 클래스들의 공통적인 특징을 묶을때 사용 - abstract는객체를 생성할수 없다 (ne..