본문 바로가기
728x90

language64

DBCP API를 이용한 커넥션 풀 커넥션 풀(Connection pools) -커넥션은 객체이다. 이 객체가 만들어질 때마다 많은 시스템 자원이 필요하다. 따라서 메모리에 객체를 할당할 자리를 만들고 또 객체가 사용할 여러 자원들에 대한 초기화 작업, 또한 이 객체가 더 이상 필요 없을 때 객체를 거둬들이는 작업이 필요하다. -위의 시스템 자원에 대한 문제를 해결하기 위해 커넥션 풀에 커넥션 객체들을 만들어 놓은 후, 커넥션 객체가 필요한 경우 작성한 객체를 할당해 주고, 사용이 끝난 후에는 다시 커넥션 풀로 회수하는 방법을 사용한다. -커넥션 풀은 끊임없이 생성되는 커넥션 문제 해결이 목적으로, 반드시 컨테이너(container)에 1개만 만들어지도록 해야 한다. -커넥션 풀의 전략 1.service()메소드(사용자 요청)당 1개씩 할.. 2020. 11. 15.
JQuery 사용법 JQuery 기본 사용법 1)기본 문법 ex) $(selector).action() $:JQuery에서 정의 및 접근에 사용 (selector): HTML 엘레먼트 action():해당 엘리먼트에서 수행할 동작 2)실렉터 - HTML 엘리먼트에 접근 -JQuery 실렉터는 엘리먼트를 선택하여 작업을 처리하기 위해 사용한다. -모든 JQuery의 실렉터는 $로 시작해 $()와 같은 형태로 사용한다. -()안에는 엘리먼트명, 엘리먼트의 id속성값, class속성값 등이 올 수 있다. 실렉터 표시 형태 사용 예 엘리먼트명 $("엘리먼트명") -HTML 태그 연습 -JS에서 접근 $("p") 엘리먼트의 id 속성값 $("#id속성 값") -HTML 태그 연습 -JS에서 접근 $("#test") 엘리먼트의 cla.. 2020. 11. 15.
Ajax+JQuery Ajax(Asynchronous JavaScript & XML) 정의 -비동기적인 웹 애플리케이션의 제작을 위해 아래와 같은 조합을 이용하는 웹 개발 기법이다. 탄생 배경 -사용자 인터페이스는 플래시를 사용한 플러그인, 자바 애플릿, 액티브엑스 등 웹 브라우저 자체의 기능이 아닌 추가적인 기능을 사용해서 구현하는 방법밖에 없다고 생각되어져 왔다. 그러나 구글 랩이 공개된 이후 이런 생각들은 바뀌게 되었다. 자바스크립트, DOM, 스타일 시트 등의 웹 브라우저가 기본적으로 가지고 있는 기능들을 사용해도 가능하다는 것을 알게 되었다. 다만 당시에는 이런 기술을 한마디로 정의할 용어가 없어 Ajax로 불리게 되었다. -오래된 새로운 기술(이미 있었던 것을 조합해서 새롭게 발전시킨 기술)로 웹 브라우저가 기본적.. 2020. 11. 15.
액션 태그(Action tag) -액션 태그 1)스크립트, 주석, 디렉티브와 함께 JSP 페이지를 이루는 요소이다. 2)페이지와 페이지 사이의 제어를 이동시킬 수도 있고, 다른 페이지의 실행 결과를 현재의 페이지에 포함시킬 수 있다. 3)자바빈을 JSP 페이지에서 사용할 수 잇는 기능도 제공한다. 4)웹 브라우저에서 자바 애플릿을 실행시킬 수 있도록 지원하는 기능도 있다. -JSP에서 제공하는 6개의 액션 태그 액션 태그명 액션 태그 설명 include 다른 페이지의 실행 결과를 현재의 페이지에 포함할 때 사용 forward 웹 페이지 간의 제어를 이동시킬 때 사용 plug-in 웹 브라우저에서 자바 애플릿을 실행시킬 때 사용 useBean 자바빈을 JSP 페이지에서 쓸 때 사용 setProperty 프로퍼티의 값을 세팅할 때 사용 g.. 2020. 11. 14.
JSP 내장 객체(Implied Object) -내장 객체는 JSP에서 제공하는것으로, 객체의 레퍼런스를 사용해 객체의 프로퍼티(멤버 필드,전역 변수)와 메소드에 접근한다. -레퍼런스 타입의 변수를 선언과 객체 생성 없이 사용할 수 있는데, 이것은 JSP페이지가 서블릿으로 변환될 때 JSP 컨테이너가 자동으로 제공하기 때문이다. -객체는 멤버 변수와 메소드로 이루어져있는데, 이들을 사용하려면 먼저 객체를 생성하고 레퍼런스 변수를 통해서 객체에 접근한다. ex) Timestamp now = new Timestamp(System.currentTimemillis());은 Timestamp 클래스 타입의 객체를 생성하고, 그 객체가 위치한 곳의 위치 정보는 레퍼런스 변수인 now가 가지게 된다. 향후 이 객체에 접근하려면 now.을 사용한다.(now.toS.. 2020. 11. 13.
JSP(Java Server Pages) vs Servlet(Server+ applet) 1. Servlet 정확한 이해가 필요 할 듯 하다. 서블릿(servlet)은 서버에서 웹페이지 등을 동적으로 생성하거나 데이터 처리를 수행하기 위해 자바로 작성된 프로그램이다. servlet은 Java코드 안에 HTML태그가 삽입되며 자바언어로 되어있다. .java가 확장자이다. 서블릿의 단어는 Server + Let의 합성어라고 알고 있는 사람도 있고 Server + Applet으로 알고 있는 사람도 있다. 사실 둘다 어려운 느낌이다. 하지만 쉽게 풀어보면 '클라이언트 요청을 처리하고 그 결과를 다시 클라이언트에게 전송하는 servlet 클래스의 구현 규칙을 지킨 자바프로그램'이라고 이해하면 좋을 듯하다. 서블릿(servlet)은 자바언어를 웹어플리케이션에 조금 더 개발하기 쉽게 하기 위해 만든 AP.. 2020. 8. 7.
Model1 vs Model2 vs MVC(Model View Controller) 패턴(pattern) 1. 모델1 JSP에서 모든 로직과 출력을 처리하느냐 아니면 JSP에서는 출력만 처리하느냐에 따라서 모델 1 구조와 모델 2 구조로 구분된다 천천히 알아보자 DB는 제외한 모델 1구조라고 할 수 있다 (만약 DB가 있다면 서비스&빈클래스와 상호작용 할것 이다) 그림과 같이 웹브라우저의 요청을 JSP가 직접 처리한다. 필요에 따라 웹브라우저의 요청에 따라 서비스 클래스나 와 자바빈 클래스를 사용해서 웹 브라우저가 요청한 작업을 처리하고 그 결과를 클라이언트에게 출력한다. 즉 , JSP 페이지에 비즈니스 로직을 처리하기 위한 코드와 웹 브라우저에 결과를 출력하는 코드가 섞인다는 것을 의미한다. 2. 모델 2 웹 브라우저의 요청을 서블릿이 받고 이후 알맞는 로직 클래스에 의해서 처리후 JSP 페이지로 포워딩 .. 2020. 8. 7.
캡슐화와 정보은닉 진짜 객체지향은 정보 은닉에서부터 시작된다. 객체지향 언어를 통해서 얻고자 하는 것이 유연성(기능의 확장, 교체, 변경)이라면 정보 은닉은 그것을 가능하게 하는 전략이다. 객체, 상속, 캡슐화 등은 정보 은닉의 수단에 불과하다. 그리고 좋은 정보 은닉은 잘 된 추상화를 통해 얻어진다. 많은 개발자들이 객체지향에 들어서면서 캡슐화를 정보 은닉이라고 배운다. 몇몇 훌륭한 블로그들을 제외하고는 대부분의 블로그들이 정보 은닉 = 캡슐화로 설명하고 있다. 매우 안타까운 일이다. 정보 은닉을 캡슐화로만 알고 있으면 아직 객체지향 입구에도 못들어 온 것이다. 정보 은닉과 관련하여 인터넷을 검색해 본 결과, 정확하게 정보 은닉을 설명한 것은 아래 글 밖에 없었다. http://egloos.zum.com/aeternum.. 2020. 6. 9.
javabeans 와 EJB(Enterprise Java Bean)의 차이점 JavaBean: -자바로 작성된 컴포넌트들을 일반적으로 일컫는 말 -자바는 프로그램 기본단위가 클래스이고, 자바빈은 클래스들이 복합적으로 이루어진 구조 -자바 언어의 프로그램 작성 규칙과 문법을 따름 -자바빈은 자바의 클래스를 만드는 것과 같은 규칙을 갖는다. 클래스의 작성 순서 1.package 패키지명;//없으면 생략 가능 2.import 패키지명을 포함한 클래스의 풀네임;//없으면 생략 가능 3.class 클래스명{//필수 정의, 생략 불가능 } 자바의 클래스 선언 -접근제어자 [키워드] class 클래스명{} ●접근 제어자(access modifier): -public,private,default(접근 제어자가 없는 형태)가 올 수 있는데, 자바빈을 작성할 때는 접근 제어의 강도가 가장 약한 p.. 2020. 6. 9.
728x90