본문 바로가기
Programming/java 고급과정

웹프로그래밍 시작하기

by 막이 2012. 5. 9.

<프로그램 설치 및 세팅> 

 

컴퓨터 이름이 한글이거나, 이름에 - 가 들어가지 않게 설정해줌

 

-Eclipse

http://www.eclipse.org/downloads/

Eclipse IDE for Java EE Developers 설치

 

-Aphache Tomcat v6.0

http://tomcat.apache.org/download-60.cgi

Core : zip 다운로드

Tomcat은 가벼운 WAS

 

 

-Eclipse 셋팅

[Windows] - [Preference] - [Server] - [Runtime Enviroments] - [Add]

- [Aphache Tomcat v6.0 선택 한 뒤 NEXT] - [Browse] - [tomcat이 깔린 경로 선택]-[Finish] 

 

 [New]->[Dynamic Web Project]  프로젝트 이름은 서버상에서 경로가 된다

Webcontent 폴더는 브라우저에서 보이는 경로

 [New]->[Servlet] 패키지명은 반드시 줘야함(소문자로)

 

<접근제한자>

defalut -> 같은 패키지 내

private -> 같은 클래스 내

protected -> 상속관계에서만 사용 가능

 

 

 

웹에서는 System.out.println(); 을 사용하지 않는다.

미사용시 최대 15%이상의 향상을 가져옴

 

 

라이브러리(jar) - 공동으로 사용 할 수 있는 코드

                        extends, implments로 가져와서 사용할 수 있음. 프로젝트 일부에 기여

Framework - (라이브러리에서 좀 더 발전된 개념) 라이브러리에 강하게 묶여있어서

                   무조건 extends 해줘야함. 강제성을 띔. 전체의 life cycle을 관리. 프로젝트 전반에 기여

Platform - 없으면 개발 자체가 불가능. (JDK, JVM, .net 등)

*라이브러리와 Framework는 없으면 개발자가 만들어 낼 수 있음

 

 

<forName()>

물리적인 클래스 파일명을 인자로 넣어주면 이에 해당하는 클래스를 반환해줌

클래스를 조사하기 위한 클래스

변수로 클래스를 만들때 Class.forName 은 유용하게 쓰인다.

 

 

<웹화면에 Hello World 찍어내기>

 

 

package com.thinker;

 

import java.io.IOException;
import java.io.OutputStream;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

 

/**
 * Servlet implementation class HelloServlet
 */
public class HelloServlet extends HttpServlet {
 private static final long serialVersionUID = 1L;
      
    /**
     * @see HttpServlet#HttpServlet()
     */
    public HelloServlet() {
        super();
        // TODO Auto-generated constructor stub
    }

 /**
  * @see HttpServlet#service(HttpServletRequest request, HttpServletResponse response)
  */
 protected void service(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

  OutputStream out = response.getOutputStream();//지금부터 빨대를 꽂겠다고 선언
  
  String str= "<h1>Hello World</h1>";
  
  out.write(str.getBytes());//문자열을 byte단위로 바꿈
  
 }

}


푸른색을 제외한 부분은 자동으로 생성됨

 

response : 내가 보내는 것

request    : 브라우저에서 보내는 것

 

 

브라우저 마다 읽는 방식이 다르기 때문에, 표준을 지켜줘야함