블로그 이미지
개발자의 조건은 어떤것도아닌 3일은 기본으로 날샐수있는 체력과 3일을 안씻어도 찝찝합을 못느끼는 것과 라면을 먹어도 탈없는 위입니다.
DefineJAVA

공지사항

최근에 받은 트랙백

글 보관함

calendar

      1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29      

'프레임워크'에 해당되는 글 3

  1. 2008/01/22 JDK 5.0 + Tomcat 이클립스 개발환경에서 Struts (1.3.8) 설치 하기 (1)
  2. 2007/02/09 Spring Framework
  3. 2007/02/08 프레임 워크란?
크리에이티브 커먼즈 라이선스
Creative Commons License

JDK 5.0 + Tomcat 이클립스 개발환경에서 Struts (1.3.8) 설치 하기

엄청 오랜만에 글을 쓰게 되었네요~
예전부터 계획했던 스트럿츠와 관련된 내용입니다.
한달동안 훈련소를 갔다가 오고 이것저것 하다 보니 시간이 많이 지나버렸네요!
오랜만에 Struts 홈페이지를 보니 1.3.8로 업그레이드가 되었더군요~
이전에 마지막에 써봤던 버젼이 1.2.9 였는데... 말이죠~
우선 기반은 1.3.8 기반으로 설명 하겠습니다.

우선 JDK와 Tomcat에 깔여 있고 툴은 이클립스 기반으로 하겠습니다.

설치 순서는 다음과 같습니다.

1. Struts 다운로드
2. 필요한 jar 파일 프로젝트의 WEB-INF 밑에 LIB 폴더에 복사(라이브러리 등록)
3. WEB.XML 파일 작성
4. Struts 설정파일(기본: struts-config.xml) 작성

자~ 대략적인 순서는 위에 갔습니다. 저렇게 보니 간단하죠?
머 그냥 해봐도 간단하기는 합니다.
그럼 시작하겠습니다.

1. Struts 다운로드
http://struts.apache.org/download.cgi#struts138

사용자 삽입 이미지

위 주소에서 알맞은 Struts 버젼을 다운 받습니다.
필자는 Full 버젼을 받도록 하겠습니다.
사용자 삽입 이미지

Full 버젼에는 밑에 있는 모든 내용이 포함되어 있습니다.
Libray + Source + Example + Documentation
사용자 삽입 이미지

Documentation 내용에 설치 하는 내용도 포함되어 있습니다.
다 다운 받으셨으면 우선 적당한 곳에 압축을 풀어서 내용을 확인 해 봅니다.

2. 필요한 jar 파일 등록
이제부터는 이클립스에서 프로젝트를 생성하고 그 프로젝트에 라이브러리 등록 하겠습니다.
우선 이클립스를 키시고 프로젝트를 한개 생성합니다.

사용자 삽입 이미지

저는 MyEclipse 6.0.1 버젼에서 동작 시키도록 하겠습니다.
그렇게 크게 차이는 없으며 이클립스를 사용하시던 분이라면 쉽게 따라 올 수 잇다고 생각합니다.
사용자 삽입 이미지

struts 이름의 웹 프로젝트를 만듭니다.

프로젝트가 생성이 되었으며 내용을 보면 기본적이 라이브러리들이 등록되어 있으며 프로젝트의 최 상위 디렉토리가 되는 WebRoot라는 디렉토리가 있으면 그 밑에 몇개의 폴더와 폴더가 있는 것이 보일 것입니다.

사용자 삽입 이미지

이제 라이브러리(jar) 파일을 복사 시키겠습니다.
아까 압축을 푼 곳을 보면 lib 폴더안에 여러 jar 파일들이 있을 것입니다.
commons 라이브러리와 core 라이브러리 타일즈 프레임워크, EL 등 여러가지 있을 것입니다.
사용자 삽입 이미지

우선 여기 있는 jar 파일을 전부 복사 하겠습니다. 원래는 필요한 것만 복사하셔서 사용하여도 되지만 여기서 하나하나 전부 설명을 할 수 없고 설치에 대한 설명을 위한 부분이기 때문에 모두 다 설치 하겠습니다.

전체를 프로젝트의 WebRoot\WEB-INF\LIB 디렉토리에 복사를 합니다.
해당 디렉토리에 복사를 하면 자동으로 Referenced Libraies에 등록이 될것입니다.

사용자 삽입 이미지

이클립스를 버젼과 설정에 따라 등록이 안될 수도 있습니다. 등록이 안될경우 프로젝트의 속성에 들어가셔서 직접 등록을 해 주시면 됩니다.

등록이 완료 되었으면 다음으로 넘어가도록 하겠습니다.

3. WEB-INF 밑에 web.xml 설정
Struts는 Servlet입니다. Servlet 등록을 위하여 web.xml파일을 열어서 편집을 하여야 합니다.

사용자 삽입 이미지

<?xml version="1.0" encoding="UTF-8"?>
<web-app version="2.4"
 xmlns="http://java.sun.com/xml/ns/j2ee"
 xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
 xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee
 http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">
 
  <welcome-file-list>
    <welcome-file>index.jsp</welcome-file>
  </welcome-file-list>
 
   <!-- Action Servlet Configuration -->
    <servlet>
        <servlet-name>action</servlet-name>
        <servlet-class>org.apache.struts.action.ActionServlet</servlet-class>
        <init-param>
            <param-name>application</param-name>
            <param-value>
                org.apache.struts.webapp.el.exercise.ApplicationResources</param-value>
        </init-param>
        <init-param>
            <param-name>config</param-name>
            <param-value>/WEB-INF/struts-config.xml</param-value>
        </init-param>
        <init-param>
            <param-name>debug</param-name>
            <param-value>2</param-value>
        </init-param>
        <init-param>
            <param-name>detail</param-name>
            <param-value>2</param-value>
        </init-param>
        <load-on-startup>2</load-on-startup>
    </servlet>


    <!-- Action Servlet Mapping -->
    <servlet-mapping>
        <servlet-name>action</servlet-name>
        <url-pattern>*.do</url-pattern>
    </servlet-mapping>
   
</web-app>

web.xml

필자가 추가한 내용을 <Servlet>과 <servlet-mapping> 부분입니다. Struts를 사용하기 전에 Servlet에 대하여 모르시는 분은 Servlet부터 공부를 하고 오시는 것이 더 효율적으로 공부를 하실 수 있을 것 같습니다.

<Servlet>부분을 살펴보면 이것저것 설정 정보가 있다는것을 볼 수 있습니다. 서블릿의 이름과 파리미터를 보시면 대강 이해를 하실수 있을 것입니다. struts-config 파일의 정보라든지 debug 정보 출력 정도라는지...
<Servlet-mapping>부분을 보면 요청이 어떻게 들어왔을 때 Struts로 처리를 할 것인지 적혀 있는 부분입니다.
xxx.do 로 호출 될 경우에만 Struts로 처리 한다는 이야기 입니다.

4. Struts-Config 파일 설정
web.xml 파일 설정이 끝나으면 이제 struts-config 파일을 만들어야 합니다.

사용자 삽입 이미지

설정 정보 파일은 web.xml에서 지정한 위치와 파일이름으로 생성해 주시면 됩니다.
struts-config.xml파일을 생성하시고 내용을 다음과 같이 입력 하시면 Struts 설치는 끝이 납니다.

사용자 삽입 이미지

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE struts-config PUBLIC
          "-//Apache Software Foundation//DTD Struts Configuration 1.3//EN"
          "http://struts.apache.org/dtds/struts-config_1_3.dtd">

<struts-config>
    <form-beans />
    <global-forwards />
    <action-mappings />
</struts-config>

struts-config.xml
Struts 설치는 여기까지 이며~ 이 다음에 Struts 설치 한것을 테스트 해 보도록 하겠습니다.


 

Spring Framework

2007/02/09 23:37 | Posted by DefineJAVA
크리에이티브 커먼즈 라이선스
Creative Commons License

Spring Framework



Spring Framework는 2002년에 발간된 Rod Johnson의 저서 "Expert One-on-One J2EE Design and Development"에서 소개된 소스코드와 디자인 패턴들을 다시 정리하면서 2003년 초에 오픈소스로 시작된 프로젝트이다.

스프링의 목적은 J2EE 기반의 Web Applicaion을 쉽게 제작하는 것을 목적으로 하고 있으면서 J2EE 서비스에 종속되지 않고 계층화, 모듈화가 잘 되어 있는 유연한 프레임워크이다.
스프링은 각종 Bean의 생성 하고 관리를 하는 Light Weight 컨테이너로써 다른 프레임워크와 결합에 매우 중요한 역활을 한다.

사용자 삽입 이미지


Core 패키지는 프레임워크의 가장 기본적인 부분이고 당신에게 bean컨테이너를 기능적으로 관리하는 것을 허용하는 의존성 삽입(Dependency Injection-DI)기능을 제공한다. 여기의 기본적인 개념은 프로그램에 따른 싱글톤의 필요성을 제거하는 factory패턴을 제공하고 당신의 실질적인 프로그램 로직으로부터 설정과 의존성 명시를 분리시키는 것을 당신에게 허용하는 BeanFactory이다.

Core 패키지의 가장 위에는 프레임워크 스타일의 방식으로 bean에 접근하기 위한 방법을 제공하는 다소 JNDI-등록기와 유사한 Context 패키지가 위치한다. context패키지는 bean패키지로부터 이 기능을 상속하고 예를 들어 resource bundle와 같은것을 사용하여 텍스트 메시지, 이벤트 위임, 자원-로딩 그리고 예를 들어 서블릿 컨테이너와 같은 것에 의해 투명한 컨텍스트 생성을 위한 지원을 추가한다.

DAO 패키지는 끔찍한 JDBC코딩과 데이터베이스 업체 특정 에러코드의 파싱을 할 필요를 제거하는 JDBC추상화 레이어를 제공한다. 또한 JDBC패키지는 특정 인터페이스를 구현하는 클래스를 위해서 뿐 아니라 당신의 모든 POJOs를 위해서도 선언적인 트랜잭션 관리만큼 프로그램에 따른 방식으로 할수 있는 방법을 제공한다.

ORM 패키지는 JDO, Hibernate 그리고 iBATIS를 포함하는 인기있는 객체-관계 맵핑 API를 위한 통합 레이어를 제공한다. ORM패키지는 사용하여 당신은 앞에서 언급된 간단한 선언적인 트랜잭션 관리와 같은 Spring이 제공하는 다른 모든 기능을 사용해서 혼합하여 모든 O/R매퍼를 사용할수 있다.

Spring의 AOP 패키지는 당신이 정의하는것을 허용하는 AOP 제휴 호환 aspect-지향 프로그래밍 구현물을 제공한다. 예를 들어 코드를 명백하게 분리하기 위한 메소드-인터셉터와 pointcut은 논리적으로 구별되어야 할 기능을 구현한다. 소스레벨 메터데이타 기능을 사용하여 당신은 .NET속성과 다소 비슷한 모든 종류의 행위적 정보를 당신의코드로 결합한다.

Spring의 Web 패키지는 멀티파트기능, 서블릿 리스너를 사용한 컨텍스트 초기화 그리고 웹-기반 애플리케이션 컨텍스트와같은 기본적인 웹-기반 통합 기능들을 제공한다. WebWork나 Struts와 함께 Spring을 사용할때 이것은 그것들과 통합할 패키지이다.

Spring의 웹 MVC 패키지는 웹 애플리케이션을 위한 Model-View-Controller구현물을 제공한다. Spring의 MVC구현물은 어떠한 구현물이 아니다. 이것은 도메인 모델 코드와 웹폼(Web forms)사이의 분명한 구분을 제공하고 유효성체크와 같은 Spring프레임워크의 다른 모든 기능을 사용하도록 당신에게 허용한다.

* 각 모듈 설명에 대한 출처는 http://openframework.or.kr/ 입니다.

프레임 워크란?

2007/02/08 22:36 | Posted by DefineJAVA
크리에이티브 커먼즈 라이선스
Creative Commons License

프레임 워크란?


사전적 의미로는 "어떠한 것을 이루는 뼈대, 기본 구조"를 뜻한다.
소프트웨어에서의 프레임워크란 "소프트웨어의 특정 문제" 또는 "소프트웨어 제작을 편리하게 할수 있도록 "미리 뼈대를 이루는 클래스와 인터페이스를 제작하여 이것들을 모아둔 것" 이라고 할 수있다.

지금 프레임워크에 대해서 글을 쓰고 있는 필자도 프레임워크를 처음 접할 때 도대채 이것을 왜 사용할까? 이것을 사용하면 더 편하게 작업할 수 있을까? 프레임워크가 과연 무엇이길레...
이런생각을 자주 하곤 했다.
필자의 생각으로는 프레임워크를 알기 위해서는 프레임워크를 사용 해 보는것이 가장 빠른 길인거 같다.
몇년동안 프레임워크 프레임워크 하는 소리를 듣고 인터넷을 찾아보고 하였지만 역시나 한번 사용해 보니 이런게 프레임 워크다는 생각이 들게 되었다.

아무튼 프레임 워크란 하나 하나의 상황에 초점을 맞추고 있는 디자인 패턴들을 모아 놓고 적용하기 쉽도록 구성하여, 개발자들이 쉽게 문제를 해결할 수 있도록 해주는 것이며 이것을 확장하여 클라이언트의 요구 사항을 충족시키는 Application을 만들 수 있는 뼈대를 제공해주 것이다.
즉, 개발자는 완성된 뼈대에 살을 붙이는 작업으로 Application을 완성시키게 된다.

프레임 워크에는 처리 영역에 따라 기능, 지워, 통합 프레임 워크로 구분이 된다.

1. 기능 프레임워크
 전체 Application의 특정 기능 부분의 구현에 사용되는 프레임 워크로써 Application 동작에 필요한 여러 영역들의 문제를 전담하는 프레임 워크 들이다.
 예를 들어 DB에 접근하여 처리만 담당하는 프레임 워크라든지 로깅을 담당하는 프레임워크 등 특정한 영역에 사용되는 프레임워크이다.
2. 지원 프레임워크
 Application 개발 도움을 주는 프레임워크를 말하며 Applicaion안에 포함되지 않고 밖에 포함되는 프레임워크이다.
 Applicaion 개발 보다는 빌드를 위한 프레임워크가 지원프레임워크에 속한다.
3. 통합 프레임워크
 여러 기능의 프레임워크를 한 곳에 모아 통합한 프레임워크를 말한다.
 소프트웨어 전반에 걸쳐 개발자들이 ㄷ구현해야 할 많은 부분을 대신 해주며 대형 벤더들이 개발 환경과 함께 제공해 주는 경우가 많다.

이상 프레임워크에 대해서 정리해 보았다. 필자가 생각하고 있는 프레임워크가 다른 전문가들이 생각하고 있는 프레임워크가 맞는지는 필자도 잘 모른다.
아무리 생각해도 프레임 워크란 참....애매한 존재인거 같다.
 

이전 1 다음