'FrameWork'에 해당되는 글 12건

DTO 란?

FrameWork 2015. 12. 10. 00:47



애플리케이션의 각 계층간의 데이터 교환을 위해 사용되는 개체 DTO(Data Transfer Object) 이라고 한다. DTO는 각 계층간 데이터 전송을 위해 아무런 로직을 갖지 않고, 오직 데이터를 담기 위해 사용되는 필드와 Getter/Setter 메서드만 가지는 POJO(Plain Old Java Object). POJO는 특정 인터페이스 또는 클래스를 상속하지 않는 일반 자바 개체를 말한다.

 DTO는 원격 객체의 비즈니스 로직을 표현하지만 같은 비즈니스 로직 안에 포함될 필요는 없다. 단지 클라이언트가 데이터를 요구할때 원격 객체의 데이터를 표현할 뿐이다. 또한 DTO는 비즈니스 객체를 갱신하는 데도 사용된다. 

DTO는 네트워크 부하를 줄이고 응답 시간을 향상시킨다.

'FrameWork' 카테고리의 다른 글

스트럿츠(Struts) 소개  (0) 2018.10.20
MVC 디자인 패턴  (0) 2018.10.20
프레임워크(Framework)와 라이브러리  (0) 2015.12.10
Spring 이란 ?  (0) 2015.12.10
Spring에서 HSQLDB 설정하기  (0) 2015.12.09
블로그 이미지

클라인STR

,





프레임워크의 사전적 의미는 무엇인가를 이루는 뼈대나 기반구조를 말한다. 소프트웨어에서 프레임워크란
소프트웨어의 특정 문제를 해결하기 위해서 상호 협력하는 클래스와 인터페이스의 집합이다.
프레임워크는 완성된 애플리케이션이 아니며, 개발자는 프레임워크를 바탕으로 비즈니스 요구사항을 만족시키는 완전한 애플리케이션 소프트웨어를 완성시키는 작업을 해야한다.

 

 


프레임워크의 특징을 정리하자면 다음과 같다.

★ 프레임워크는 특정 개념들의 추상화를 제공하는 여러 클래스나 컴포넌트로 구성된다.
★ 프레임워크는 이러한 추상적인 개념들이 문제를 해결하기 위해 같이 작업하는 방법을 정의한다.
★ 프레임워크의 컴포넌트들은 재사용이 가능하다.
★ 프레임워크는 좀더 높은 수준에서 패턴들을 조직화한다.

프레임워크와 라이브러리에 차이점에 대해서
자바에서 클래스나 인터페이스가 프레임워크라고 생각할수 있으나, 이는 라이브러리에 해당된다.
라이브러리와 프레임워크의 가장 큰차이점은 라이브러리는 소프트웨어에서 호출할수 있는 함수와 루틴으로 구성된다. 하지만 프레임워크는 특정애플리케이션에서 사용할수 있는 상호협력적인 컴포넌트들을 제공한다. 확장 포인트가 존재한다는 점이다.

'FrameWork' 카테고리의 다른 글

스트럿츠(Struts) 소개  (0) 2018.10.20
MVC 디자인 패턴  (0) 2018.10.20
DTO 란?  (0) 2015.12.10
Spring 이란 ?  (0) 2015.12.10
Spring에서 HSQLDB 설정하기  (0) 2015.12.09
블로그 이미지

클라인STR

,

Spring 이란 ?

FrameWork 2015. 12. 10. 00:39





1. Spring 이란?
■ Rod Johnso이 만든 오픈소스 프레임워크
■ 복잡한 엔터프라이즈 애플리케이션 개발을 겨냥
■ 자바빈즈를 사용하지만 EJB에서 할 수 있었던 작업을 가능하게 해줌
■ 간소함, 테스트의 용이성, 느슨한 결합성의 측면에서 스프링의 이점을 얻을수 있음.

 


2. Spring 구성모듈

 

 


Core
프레임워크의 가장 기본적인 부분이고 IoC와 의존성 삽입(Dependency Injuection-DI)기능을 제공한다.
BeanFactory는 IOC를 적용하여 애플리케이션의 설정과 의존성에 대한 명세를 실페 애플리케이션 코드로 부터 분리하는 팩토리 패턴의 구현체

DAO(Data Access Object)
JDBC로 작업할때의 반복적인 연결생성, 명령실행, ResultSet 처리, 연결끊기등의 일을 추상화하여 데이터베이스 연결 코드를 간결하도록 구성. 끔찍한 JDBC코딩과 데이터베이스 업체 특정 에러코드의 파싱을 할 필요를 제거하는 JDBC추상화 레이어를 제공한다. 또한 JDBC패키지는 특정 인터페이스를 구현하는 클래스를 위해서 뿐 아니라 모든 POJO를 위해서도 선언적인 트랜잭션 관리만큼 프로그램에 따른 방식으로 할수 있는 방법을 제공한다.

ORM(Object Relational Mapping)

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

AOP(Aspect Oriented Programming)

관점지향 프로그래밍에 대한 풍부한 자원을 제공하며 스프링 애플리케이션을 위한 Aspect를 개발하는 토대역할을 함.

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

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

'FrameWork' 카테고리의 다른 글

스트럿츠(Struts) 소개  (0) 2018.10.20
MVC 디자인 패턴  (0) 2018.10.20
DTO 란?  (0) 2015.12.10
프레임워크(Framework)와 라이브러리  (0) 2015.12.10
Spring에서 HSQLDB 설정하기  (0) 2015.12.09
블로그 이미지

클라인STR

,

 

스프링 설정파일에서 xml을 다음과 같이설정한다.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:jd="http://www.springframework.org/schema/jdbc"
xsi:schemaLocation="http://www.springframework.org/schema/beans
      http://www.springframework.org/schema/beans/spring-beans-3.0.xsd
      http://www.springframework.org/schema/jdbc
      http://www.springframework.org/schema/jdbc/spring-jdbc-3.0.xsd"> 
 
<jdbc:embedded-database id="dataSourceSpied" type="HSQL" /> 
      
     <jdbc:initialize-database data-source="dataSourceSpied" ignore-failures="DROPS">
        <jdbc:script location="classpath:database/hsqldb/schema.sql" />
        <jdbc:script location="classpath:database/hsqldb/data.sql" />
    </jdbc:initialize-database>
cs

 

schema.sql

1
2
3
4
5
6
7
create table t_sample (
    sample_no   int           not null,
    title       varchar(500)  not null,
    description varchar(1000not null,
    primary key (sample_no)
);
 
cs

data.sql

1
2
3
4
insert into t_sample (sample_no, title, description) values (1'타이틀 1''설명 1');
insert into t_sample (sample_no, title, description) values (2'타이틀 2''설명 2');
insert into t_sample (sample_no, title, description) values (3'타이틀 3''설명 3');
commit;
cs

'FrameWork' 카테고리의 다른 글

스트럿츠(Struts) 소개  (0) 2018.10.20
MVC 디자인 패턴  (0) 2018.10.20
DTO 란?  (0) 2015.12.10
프레임워크(Framework)와 라이브러리  (0) 2015.12.10
Spring 이란 ?  (0) 2015.12.10
블로그 이미지

클라인STR

,