KR101443879B1 - Method of processing web application framework - Google Patents

Method of processing web application framework Download PDF

Info

Publication number
KR101443879B1
KR101443879B1 KR1020120107363A KR20120107363A KR101443879B1 KR 101443879 B1 KR101443879 B1 KR 101443879B1 KR 1020120107363 A KR1020120107363 A KR 1020120107363A KR 20120107363 A KR20120107363 A KR 20120107363A KR 101443879 B1 KR101443879 B1 KR 101443879B1
Authority
KR
South Korea
Prior art keywords
view
controller
database
framework
web application
Prior art date
Application number
KR1020120107363A
Other languages
Korean (ko)
Other versions
KR20140040535A (en
Inventor
김창희
Original Assignee
주식회사 참좋은넷
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 주식회사 참좋은넷 filed Critical 주식회사 참좋은넷
Priority to KR1020120107363A priority Critical patent/KR101443879B1/en
Publication of KR20140040535A publication Critical patent/KR20140040535A/en
Application granted granted Critical
Publication of KR101443879B1 publication Critical patent/KR101443879B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2455Query execution
    • G06F16/24568Data stream processing; Continuous queries
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Computational Linguistics (AREA)
  • Mathematical Physics (AREA)
  • Human Computer Interaction (AREA)
  • Stored Programmes (AREA)

Abstract

본 발명은 MVC(Model View Controller) 개념에서 채널과 커맨드를 추가하여 컴포넌트 기반 개발 방법론의 단점을 보완한 웹 어플리케이션 프레임워크 처리 방법에 관한 것이다. 본 발명의 방법은 모델 인터페이스 모듈과, 실제 개발자 로직을 수행하는 부분으로서 View단과 Model단을 구분하여 개발자에게 전후단의 종류와 상관없는 일관된 로직을 전개할 수 있도록 하는 커맨드 인터페이스 모듈과, 리퀘스트(Request)를 처리함으로써 기존의 오픈 프레임워크와 연동을 가능하게 하고, 임의의 뷰(View) 프로그램을 연결하더라도 프로그램의 수정없이 연동이 가능하도록 하는 컨트롤 로더와, JSP나 Ajax, Flex 등 뷰 프로그램을 연결하기 위한 뷰 인터페이스 모듈을 포함하는 프레임워크가 탑재되어 레거시 시스템이나 데이터베이스를 이용하여 클라이언트가 요구하는 서비스를 제공하는 웹 어플리케이션 프레임워크 시스템에 있어서, JSP와 같은 UI 파트가 상기 컨트롤 로더로 서비스를 요청하면, 상기 컨트롤 로더가 해당 채널을 생성하고 파라메터를 수신하는 단계; 상기 컨트롤 로더가 해당 커맨드를 생성하여 컨트롤러로 전달하는 단계; 상기 컨트롤러가 파라메터를 부가하여 데이터베이스에 XQueryDAO와 XMLQuery로 처리를 요청하는 단계; 상기 데이터베이스는 요청을 처리한 후 결과를 반환하는 단계; 및 컨트롤러는 결과를 해당 채널을 통해 유저 파트로 전달하는 단계를 포함한다.The present invention relates to a method of processing a web application framework that compliments the disadvantages of the component-based development methodology by adding channels and commands in the MVC (Model View Controller) concept. The method includes a command interface module that divides a view stage and a model stage to develop a consistent logic regardless of the types of the front and rear stages, as a part for performing actual developer logic, ) To link with the existing open framework and to link the control loader that makes it possible to link without modifying the program even if connecting an arbitrary view program and view program such as JSP, Ajax, Flex In a web application framework system in which a framework including a view interface module for providing a service requested by a client using a legacy system or a database is provided, when a UI part such as a JSP requests a service with the control loader, When the control loader generates the corresponding channel, The method comprising: receiving a meter; Generating a corresponding command by the control loader and transmitting the generated command to the controller; Adding parameters to the controller and requesting the database to process XQueryDAO and XMLQuery; The database processing the request and returning a result; And the controller includes passing the result to the user part over the channel.

Description

웹 어플리케이션 프레임워크 처리 방법{METHOD OF PROCESSING WEB APPLICATION FRAMEWORK}[0001] METHOD OF PROCESSING WEB APPLICATION FRAMEWORK [0002]

본 발명은 웹 개발에 컴포넌트 기반 개발(Component Based Development) 방법론을 적용한 웹 개발 툴에 관한 것으로, 더욱 상세하게는 MVC(Model View Controller) 개념에서 채널과 커맨드를 추가하여 컴포넌트 기반 개발 방법론의 단점을 보완한 웹 어플리케이션 프레임워크 처리 방법에 관한 것이다.
The present invention relates to a web development tool that employs a component-based development methodology for web development, and more particularly to a method and apparatus for developing a component-based development methodology by adding a channel and a command in a MVC (Model View Controller) And a method of processing a web application framework.

일반적으로, 웹 개발 방법론으로는 객체지향 프로그래밍(OOP:Object Oriented Programming) 방법과, 컴포넌트기반 개발 방법(CBD:Component Based Development)이 널리 사용되고 있다. CBD는 공통적인 인터페이스를 가지고 있어서 여러 시스템에서 사용이 가능하도록 프로그램 코드의 구성요소를 만들고, 조립 및 재 사용하는 개발 방식이다. 이는 소프트웨어를 통째로 개발하던 기존의 방식과 달리, 부품 역할을 하는 소프트웨어 컴포넌트를 각 기능별로 개발하고, 각자에게 필요한 것을 선택하여 조립함으로써, 소프트웨어 개발에 드는 노력과 시간을 절약할 수 있다.In general, object-oriented programming (OOP) and component-based development (CBD) are widely used as web development methodologies. The CBD has a common interface and is a development method that creates, assembles, and reuses the components of the program code for use in various systems. Unlike the existing method of developing the software in its entirety, it is possible to save time and effort in software development by developing software components that serve as components, by selecting each function, and assembling the necessary components.

한편, 인터넷이 일방적으로 정보를 제공하는 웹 형태에서 최근에 인터넷에 연결된 고객의 참여를 이끌어내고 공유가 가능한 환경을 제공하는 웹 2.0 형태로 빠르게 전환되는 추세인데, 이러한 웹 2.0시대에서 웹을 플랫폼으로 간주하는 다양한 어플리케이션들이 등장하게 되었다. 이러한 다양한 기능의 인터페이스를 가진 웹 어플리케이션의 수요가 급증함에 따라 그동안 웹 클라이언트에서 동적인 요소를 제공하기 위해 사용되었던 자바 스크립트의 비중 역시 커지고 있다.On the other hand, the Internet is rapidly changing from a web form providing information unilaterally to a form of web 2.0, which provides an environment in which customers who have recently connected to the Internet can participate and share the same. In this Web 2.0 era, A variety of applications have emerged. As the demand for web applications with various functional interfaces increases, the proportion of JavaScript that has been used to provide dynamic elements in the web client is also increasing.

하지만 기존의 자바 스크립트는 단순한 동적인 효과를 제공하는 라이브러리의 측면이 강조된 것으로 이를 이용한 복잡한 웹 어플리케이션을 개발하기 위해서는 방대한 순차적인 프로그래밍이 요구되어 프로그램에 대한 전문적인 교육을 받은 일부 전문가에 의해 작성되어야 하는 곤란한 점이 있었고, 또한 자바 스크립트는 웹 브라우저가 실행하는 프로그래밍 언어로서 자바와는 달리 다양한 변수의 형 및 클래스 또는 상속 등을 사용할 수 없어 객체지향의 특성이 부족하다. 따라서 각각의 기능을 수행하는 모듈을 개발하여 통합하는 방식을 선호하는 웹 어플리케이션의 특성에 맞지 않고 각 모듈간의 상호 의존성이 커져서 개발시 모듈의 재사용이나 분업이 곤란하고 유지보수가 어려운 문제점이 있었다.
However, the existing JavaScript has emphasized aspects of the library that provide simple dynamic effects. In order to develop a complex web application using this, it is necessary to prepare a large amount of sequential programming and be written by some experts who have received specialized training on the program In addition, JavaScript is a programming language executed by a web browser, and unlike Java, it lacks object-oriented characteristics because it can not use various types of variables, classes or inheritance. Therefore, there is a problem that it is difficult to reuse or separate the module in development and maintenance because the mutual dependency between each module is not matched with the characteristic of the web application which prefers the method of integrating and developing the modules performing the respective functions.

본 발명은 상기와 같은 문제점을 해소하기 위해 제안된 것으로, 본 발명의 목적은 MVC(Model View Controller) 개념에서 채널과 커맨드를 추가하여 컴포넌트 기반 개발 방법론의 단점을 보완한 웹 어플리케이션 프레임워크 처리 방법을 제공하는 것이다.
It is an object of the present invention to provide a method of processing a web application framework that compliments a disadvantage of a component-based development methodology by adding a channel and a command in an MVC (Model View Controller) concept. .

상기와 같은 목적을 달성하기 위하여 본 발명의 방법은 XML Query 아키텍춰를 도입하여 DB의 형태에 관계없이 쿼리 작업을 가능하게 하는 모델 인터페이스 모듈과, 실제 개발자 로직을 수행하는 부분으로서 View단과 Model단을 구분하여 개발자에게 전후단의 종류와 상관없는 일관된 로직을 전개할 수 있도록 하는 커맨드 인터페이스 모듈과, 리퀘스트(Request)를 처리함으로써 기존의 오픈 프레임워크와 연동을 가능하게 하고, 임의의 뷰(View) 프로그램을 연결하더라도 프로그램의 수정없이 연동이 가능하도록 하는 컨트롤 로더와, JSP나 Ajax, Flex 등 뷰 프로그램을 연결하기 위한 뷰 인터페이스 모듈을 포함하는 프레임워크가 탑재되어 레거시 시스템이나 데이터베이스를 이용하여 클라이언트가 요구하는 서비스를 제공하는 웹 어플리케이션 프레임워크 시스템에 있어서, JSP와 같은 UI 파트가 상기 컨트롤 로더로 서비스를 요청하면, 상기 컨트롤 로더가 해당 채널을 생성하고 파라메터를 수신하는 단계; 상기 컨트롤 로더가 해당 커맨드를 생성하여 컨트롤러로 전달하는 단계; 상기 컨트롤러가 파라메터를 부가하여 데이터베이스에 XQueryDAO와 XMLQuery로 처리를 요청하는 단계; 상기 데이터베이스는 요청을 처리한 후 결과를 반환하는 단계; 및 상기 컨트롤러는 결과를 해당 채널을 통해 유저 파트로 전달하는 단계를 포함하여 뷰(View), 컨트롤(Control), 모델(Model)로 구분하여 개발자간 역할 분담으로 유지보수기간을 단축할 수 있고, DB 설계 이후 해당 DB정보가 필요없이 개발 가능하여 중요 DB 내용을 노출하지 않고도 개발이 가능하며, 로컬 프로퍼티스(Local Properties)를 통해 환경 세팅이 용이한 것을 특징으로 한다.
In order to achieve the above object, a method of the present invention includes a model interface module that introduces an XML Query architecture to enable a query operation regardless of the type of a DB, and a section that performs actual developer logic, A command interface module that allows the developer to develop consistent logic independent of the type of the front and rear end, and the ability to interoperate with existing open frameworks by processing requests, and arbitrary view programs It is equipped with a control loader that enables interworking without program modification even when connected, and a view interface module for connecting view programs such as JSP, Ajax, Flex, etc., A web application framework system Method comprising: When a UI part, such as a JSP requests a service to the control loader, the loader creates a control channel and receives the parameter; Generating a corresponding command by the control loader and transmitting the generated command to the controller; Adding parameters to the controller and requesting the database to process XQueryDAO and XMLQuery; The database processing the request and returning a result; And the controller includes a step of transmitting a result to a user part through a corresponding channel and dividing the result into a view, a control, and a model, thereby shortening a maintenance period by allocating roles among developers, It is possible to develop without exposing the contents of important DB, and it is easy to set environment through local properties.

삭제delete

본 발명에 따른 웹 어플리케이션 프레임워크는 기본 설계 템플릿을 가지고 설계를 구성해 나가는 것과 같은 효과를 얻을 수 있기 때문에 개발 시스템의 재사용도가 높아져 개발기간을 단축할 수 있고, 개발 리소스의 사용을 절감할 수 있는 효과가 있다. 또한 본 발명에 따르면 어플리케이션의 신뢰도, 코딩 소스의 품질은 물론 개발 생산성 향상 또한 보장할 수 있다.Since the web application framework according to the present invention has the same effect as that of designing with the basic design template, the development system can be reused with a high degree of use, shortening the development period and reducing the use of development resources There is an effect. Further, according to the present invention, it is possible to guarantee not only the reliability of the application, the quality of the coding source but also the improvement of the development productivity.

보다 구체적으로 살펴보면, 뷰(View), 컨트롤(Control), 모델(Model)로 구분하여 각각 서로 관여하지 않아 해당 부분만 수정하고 개발자간 역할 분담으로 유지보수기간을 단축할 수 있고, DB 설계 이후 해당 DB정보가 필요없이 개발 가능하여 중요 DB 내용에 대한 비노출 개발이 가능하며, 현존하는 웹 상의 모든 UI를 지원할 수 있다. 그리고 로컬 프로퍼티스(Local Properties)를 통해 모든 환경을 설정할 수 있어 간단한 환경 세팅이 가능하고, 누구라도 손쉽게 활용할 수 있는 장점이 있다.
More specifically, it is possible to shorten the maintenance period by dividing the view, control, and model into two parts, thereby correcting only the corresponding part and reducing the maintenance period between the developers. It is possible to develop without unnecessary DB information, and it can develop non-exposure to important DB contents and can support all existing UI on web. And you can set all environment through Local Properties, so you can set simple environment, and anyone can use it easily.

도 1은 본 발명이 적용되는 웹 어플리케이션 시스템의 전체 구성을 도시한 개략도,
도 2는 본 발명에 적용되는 일반적인 MVC 레이아웃의 개념도,
도 3은 본 발명에 따른 MVC 레이아웃의 개념도,
도 4는 본 발명에 따른 웹 어플리케이션 프레임워크 시스템의 아키텍춰를 도시한 개략도,
도 5는 본 발명에 따른 프레임워크 시스템의 소프트웨어 구성 모듈의 예,
도 6은 본 발명에 따른 프레임워크 시스템의 데이터 처리 모듈의 예,
도 7은 본 발명에 따른 프레임워크의 동작 흐름을 도시한 순서도이다.
1 is a schematic diagram showing the overall configuration of a web application system to which the present invention is applied;
2 is a conceptual diagram of a general MVC layout applied to the present invention,
3 is a conceptual view of an MVC layout according to the present invention,
Figure 4 is a schematic diagram illustrating the architecture of a web application framework system in accordance with the present invention;
5 shows an example of a software configuration module of a framework system according to the present invention,
6 shows an example of a data processing module of the framework system according to the present invention,
7 is a flowchart showing an operational flow of the framework according to the present invention.

본 발명과 본 발명의 실시에 의해 달성되는 기술적 과제는 다음에서 설명하는 본 발명의 바람직한 실시예들에 의하여 보다 명확해질 것이다. 다음의 실시예들은 단지 본 발명을 설명하기 위하여 예시된 것에 불과하며, 본 발명의 범위를 제한하기 위한 것은 아니다.BRIEF DESCRIPTION OF THE DRAWINGS The above and other objects, features, and advantages of the present invention will become more apparent from the following detailed description of the present invention when taken in conjunction with the accompanying drawings. The following examples are merely illustrative of the present invention and are not intended to limit the scope of the present invention.

도 1은 본 발명이 적용되는 웹 어플리케이션 시스템의 전체 구성을 도시한 개략도이다.1 is a schematic diagram showing the overall configuration of a web application system to which the present invention is applied.

본 발명에 따른 웹 어플리케이션 시스템은 도 1에 도시된 바와 같이 본 발명에 따른 프레임워크가 탑재되어 레거시 시스템(30)이나 데이터베이스(40)를 이용하여 클라이언트(20)가 요구하는 서비스를 제공하는 서비스 프레임워크(100)와, 네트워크(10)를 통해 서비스 프레임워크(100)에 접속하여 웹 서비스를 이용하는 클라이언트(20)로 구성된다.1, a web application system according to the present invention includes a framework according to an embodiment of the present invention. The web application system includes a legacy system 30 or a database 40, a service frame And a client 20 connected to the service framework 100 through the network 10 and using the web service.

도 1을 참조하면, 서비스 프레임워크(100)는 UI 인터페이스 컨트롤러(102)와, 자바 어플리케이션을 실행하는 워크플로우 컨트롤러(104)와 J2EE(106), O-R 데이터 컨트롤러(108)를 구비하여 클라이언트(20)의 요청에 따라 레거시 시스템(30)이나 데이터베이스(40)를 제어한다.1, the service framework 100 includes a UI interface controller 102, a workflow controller 104 for executing a Java application, a J2EE 106, and an OR data controller 108, And controls the legacy system 30 or the database 40 according to the request of the user.

도 2는 본 발명에 적용되는 일반적인 MVC 레이아웃의 개념도이고, 도 3은 본 발명에 따른 MVC 레이아웃의 예이다.Fig. 2 is a conceptual diagram of a general MVC layout applied to the present invention, and Fig. 3 is an example of an MVC layout according to the present invention.

먼저, 본 발명에 적용되는 일반적인 MVC는 도 2에 도시된 바와 같이 처리된 결과물을 이용자에게 보여주는 VIEW 영역(216)과, 요청 업무의 전체적인 흐름을 제어하는 Control 영역(214)과, 요청 업무의 비지니스 로직을 처리하는 Model 영역(212)으로 이루어지고, 각 영역은 체널(Channel;222)과 커맨드(Command;224)로 연결된다. 즉, MVC 개발방식이란 통상 데이터베이스로 대표되는 모델부분과 사용자 인터페이스 화면 부분인 뷰(View) 그리고 제어의 흐름을 관리하는 제어(Control)부분을 각각 분리하여 프로그램을 개발하여 서로 간의 간섭을 최소화하는 방식이다. 이는 분업 개발이 가능하고 코드의 재사용을 강화하고 유지보수 비용을 줄이기 위한 목적이다. 프레임워크는 구체적이며 확장 가능한 기반코드를 가지고 있으며, 설계자가 의도하는 여러 디자인 패턴의 집합으로 구성되어 있다.A general MVC applied to the present invention includes a view area 216 for displaying the processed result to the user as shown in FIG. 2, a control area 214 for controlling the overall flow of the request service, And a Model area 212 for processing logic. Each area is connected to a channel 222 and a command 224. That is, the MVC development method is a method of developing a program by separating a model part represented by a normal database, a view as a user interface screen part, and a control part for managing the flow of control, thereby minimizing interference between each other to be. This is to enable division of labor development, to enhance code reuse and reduce maintenance costs. The framework has a concrete, extensible base code, and is made up of a set of design patterns intended by the designer.

또한 본 발명에 따른 MVC는 도 3에 도시된 바와 같이, 모델 인터페이스(212a)는 XML Query 아키텍춰를 도입하여 DB의 형태에 관계없이 쿼리 작업을 가능하게 하고, 커맨드 인터페이스(224a)는 실제 개발자 로직을 수행하는 부분으로서 View단과 Model단을 구분하여 사용자(개발자)에게 전/후단의 종류와 상관없는 일관된 로직을 전개할 수 있도록 한다. 또한 본 발명에서는 컨트롤 로더(214a)를 통해 요청(Request)을 처리함으로써 기존 오픈 프레임워크와 연동을 가능하게 하고, View단이 인터페이스화되어 있어 어떠한 View 프로그램을 연결하더라도 프로그램의 수정없이 연동이 가능하다.As shown in FIG. 3, the model interface 212a of the MVC according to the present invention introduces an XML Query architecture to enable a query operation regardless of the type of a DB, and the command interface 224a provides an actual developer logic It separates the View stage and the Model stage as a part to be executed so that the user (developer) can develop consistent logic irrespective of the type of the front / rear stage. In the present invention, a request is processed through the control loader 214a to enable interworking with an existing open framework, and a view terminal is interfaced, so that any view program can be interlocked without modification of the program even if it is connected .

도 4는 본 발명에 따른 웹 어플리케이션 프레임워크 시스템의 아키텍춰를 도시한 개략도이고, 도 5는 본 발명에 따른 프레임워크 시스템의 소프트웨어 구성 모듈의 예이며, 도 6은 본 발명에 따른 프레임워크의 데이터 처리 모듈의 예이다.FIG. 4 is a schematic view showing the architecture of a web application framework system according to the present invention, FIG. 5 is an example of a software configuration module of the framework system according to the present invention, FIG. This is an example of a module.

본 발명에 따른 웹 어플리케이션 프레임워크 시스템은 크게 업무 프로세스(Business Logic, Workflow)에 관련된 컴포넌트와, 사용자 입력단(UI, Event)에 관련된 컴포넌트로 구성되어 있으며, 각 컴포넌트의 입/출력부는 추상화된 인터페이스로 구성되어 각기 독립적으로 운영함으로써 향후 각기 다른 컴포넌트로 대치/ 확장이 가능한 구조로 구성되어 있다. 이러한 프레임워크의 컴포넌트화를 통하여 시스템의 기술적 종속성에 따른 리스크 포인트의 제거가 가능하며, 향후 가능한 확장 및 추가 개발에서 탄력적인 구성이 가능하다The web application framework system according to the present invention is largely composed of components related to a business process (business logic, workflow) and components related to a user input terminal (UI, Event), and the input / It is structured to be able to replace / expand with different components in the future. Through the componentization of these frameworks, it is possible to eliminate risk points according to the technical dependency of the system, and it is possible to construct a flexible structure in future expansion and further development

도 4를 참조하면, 본 발명의 프레임워크 시스템은 Persistance Layer(110), Model Layer(120), Process Control Layer(130), View Control Layer(140), Utility Layer(150), Transfer Layer(160)로 이루어지고, Persistance Layer(110)는 BacduDS(111), JDBPool(112), DBPool(113), ConManager(114), NCconnection(115)로 이루어진다.4, the framework system of the present invention includes a persistence layer 110, a model layer 120, a process control layer 130, a view control layer 140, a utility layer 150, a transfer layer 160, And the Persistance layer 110 includes a Bacdu DS 111, a JDBPool 112, a DBPool 113, a ConManager 114, and an NCconnection 115.

Model Layer(120)는 XQueryManager(121), XQuer DTO(122), Dynamic DTO(123), Define DTO(124), XQueryDAO(125)로 이루어지고, Process Control Layer(130)는 BaseSvt(130a), Command(130b), Loader(130c)로 이루어지며, BaseSvt(130a)은 MVCSvt(131)와 BypassSvt(132)로 이루어진다. Command(130b)는 Worker Command1(134), Worker Command2(135), Worker Bean(133)으로 이루어지고, Loader(130c)는 Hanloder(136)와 SpringLoader(137)로 이루어진다.The model layer 120 includes an XQueryManager 121, an XQuer DTO 122, a Dynamic DTO 123, a Define DTO 124 and an XQueryDAO 125. The Process Control Layer 130 includes a BaseSvt 130a, And a Loader 130c. The BaseSvt 130a is composed of MVCSvt 131 and BypassSvt 132. The Command 130b comprises a Worker Command1 134, a Worker Command2 135 and a Worker Bean 133. The Loader 130c comprises a Hanloder 136 and a SpringLoader 137. [

View Control Layer(140)는 Channel(140a)로 이루어지는데 Channel(140a)에는 WebChannel(141), JSONChannel(142), FileDownChannel(143), ExcelChannel(144)이 있고, Utility Layer(150)는 Nlogger(150a)와 Session(153), Define(154)으로 이루어지고, Nlogger(150a)는 Default logger(151)와 FileLogger(152)로 이루어진다.The view control layer 140 is composed of a channel 140a. The channel 140a includes a WebChannel 141, a JSONChannel 142, a FileDownChannel 143 and an ExcelChannel 144. The Utility Layer 150 includes an Nlogger 150a A Session 153 and a Define 154. The Nlogger 150a consists of a default logger 151 and a FileLogger 152. [

Transper Layer(160)는 DataSet(160a)으로 이루어지는데, DataSet(160a)은 Parameter(161), Result(162), EDoc(163), ExcelIDTO(164), MessageDTO(165)로 이루어진다.The Transparent Layer 160 is composed of a DataSet 160a. The DataSet 160a includes a Parameter 161, a Result 162, an EDoc 163, an Excel IDTO 164, and a MessageDTO 165.

이와 같이 본 발명의 프레임워크는 입/출력부의 인터페이스(Interface) 설계로 자유로운 서버단 수용이 가능하고, First-Row(데이터 분할 전송) 기능을 통하여 수행 속도를 향상시킬 수 있으며, 확장 가능한 그리드 컴포넌트(Grid Components)를 통하여 다양한 기능성을 제공하고, 비즈니스 로직과 프리젠테이션의 분리로 개발 및 유지보수가 편리하다. 모든 컴포넌트 객체는 자바 스크립트(Javascript)와 연동 및 Javascript(HTML)내에서 제어 가능하고, 이를 통한 기존의 웹 프로그래머 인프라를 수용할 수 있다.As described above, the framework of the present invention can accommodate a server terminal freely by designing an interface of an input / output unit, can improve the speed of execution through a first-row (data division transmission) function, Grid Components), and it is easy to develop and maintain by separating business logic and presentation. All component objects can be controlled within JavaScript (Javascript) and Javascript (HTML), and can accommodate the existing web programmer infrastructure.

서버 컴포넌트는 크게 비즈니스 프로세스(Workflow) 제어부와 데이터(RDB) 제어부로 구성되고, 워크 플로우(Workflow) 파트의 경우에는 일관된 사용자 요청/응답 프로세스/라이브러리를 통일화된 형태로 제공함으로써 어떠한 개발자가 어떠한 시기에 투입되더라도 동일한 워크 플로우(Workflow) 설계/개발을 가능케 한다. 또한 UI단과 마찬가지로 입/출력부의 인터페이스 설계를 통해 UI단/DB단에 어떠한 컴포넌트(어플리케이션)가 구성되더라도 최소한의 비용을 통한 구축이 가능하다.The server component is composed of a business process control section and a data (RDB) control section. In the case of a workflow part, a consistent user request / response process / library is provided in a unified form. It enables the same workflow design / development even if it is input. In addition, as with the UI stage, it is possible to construct through a minimum cost even if any component (application) is configured in the UI stage / DB stage through the interface design of the input / output section.

그리고 본 발명의 프레임워크는 기본 설계 템플릿을 가지고 설계를 구성해 나가는 것과 같은 효과를 얻을 수 있기 때문에 개발 시스템의 재사용도가 높아져 30~40% 가량의 개발기간 단축과 개발 리소스의 사용 절감 효과를 갖는다.Since the framework of the present invention can achieve the same effects as constructing a design with a basic design template, the development system is highly reusable and has a reduction in development time of 30 to 40% and a reduction in use of development resources .

나아가 본 발명의 프레임워크는 뷰(View), 컨트롤(Control), 모델(Model)로 구분하여 각각의 모듈이 서로 관여하지 않아 해당 부분만 수정하면 되고, 수정시 전체 내용이 아닌 해당 부분만 수정이 가능하여 유지보수가 용이하며, 개발자간 철저한 역할 분담으로 유지 보수성을 향상시킬 수 있다. 그리고 중요 DB 내용을 노출시키지 않고도 개발이 가능하고, DB 설계 이후 해당 DB의 정보가 필요 없이 개발이 가능하다. 따라서 외주 개발 인력 활용시 중요 정보의 DB 접속 정보나 내용들을 노출하지 않아 보안성 높고, 현존하는 웹상의 모든 UI 지원하며, JSP, AJAX, FLEX, RIA 등 웹 상의 다양한 UI와의 호환성이 있다.
Further, the framework of the present invention is divided into a view, a control, and a model, and each module is not related to each other, so only the corresponding part needs to be modified. It is possible to maintain and repair easily, and it is possible to improve maintainability by sharing a thorough role between developers. It is possible to develop without exposing important DB contents, and it is possible to develop without DB information after DB design. Therefore, it does not expose DB access information or contents of important information when using outsourcing development personnel, and it is highly secure, supports all existing UIs on the web, and is compatible with various UIs on the web including JSP, AJAX, FLEX, and RIA.

이와 같이 구성되는 본 발명에 따른 프레임워크 시스템의 기본적인 동작절차를 설명하면 다음과 같다.A basic operation procedure of the framework system according to the present invention will now be described.

도 7은 본 발명에 따른 프레임워크의 동작 흐름을 도시한 순서도이다.7 is a flowchart showing an operational flow of the framework according to the present invention.

도 7을 참조하면, JSP와 같은 UI 파트가 로더로 서비스를 요청하면, 로더가 해당 채널을 생성하고 파라메터를 수신한다(S1~S3). 로더가 해당 커맨드를 생성하여 컨트롤러로 전달하고, 컨트롤러는 파라메터를 부가하여 데이터베이스에 XQueryDAO와 XMLQuery로 처리를 요청한다(S4,S5). 데이터베이스는 요청을 처리한 후 결과를 반환하고, 컨트롤러는 결과를 해당 채널을 통해 유저파트로 전달한다(S6~S8).Referring to FIG. 7, when a UI part such as a JSP requests a service to a loader, the loader creates a corresponding channel and receives parameters (S1 to S3). The loader generates the corresponding command and transfers it to the controller. The controller adds the parameter to the database and requests processing by the XQueryDAO and XMLQuery (S4, S5). The database processes the request and returns the result, and the controller transmits the result to the user part via the corresponding channel (S6 to S8).

이상에서 살펴 본 바와 같이 본 발명에 따른 웹 개발 프레임워크는 누가 개발을 담당하더라도 하나의 동일한 결과물을 얻을 수 있도록 시스템화된 자바 기반의 웹 프레임워크이고, UI 컴포넌트, 서버 컴포넌트로 구성된 인프라(프레임워크)와 각 수행 단계별 Task가 통합된 형태로 구성되어 있다. 따라서 본 발명의 프레임워크에 따르면 각 단계별로 개발 업무방식을 정형화하여 최소한의 개발 비용을 통한 최대한의 업무효율을 창출할 수 있도록 할 뿐 아니라 각 단계가 완료된 후에도 발생할 수 있는 각각의 세부적이고 다양한 수정 및 유지보수의 용이성을 지원한다.
As described above, the web development framework according to the present invention is a Java-based web framework that is systemized to obtain one and the same result regardless of who is responsible for development, and includes an infrastructure (framework) And tasks for each stage of execution are integrated. Therefore, according to the framework of the present invention, it is possible not only to form the development work method for each step, to create the maximum work efficiency through the minimum development cost, but also to make each detailed and various modification Supports ease of maintenance.

이상에서 본 발명은 도면에 도시된 일 실시예를 참고로 설명되었으나, 본 기술분야의 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시예가 가능하다는 점을 이해할 것이다.
While the present invention has been particularly shown and described with reference to exemplary embodiments thereof, it is to be understood that the invention is not limited to the disclosed embodiments, but, on the contrary, is intended to cover various modifications and equivalent arrangements included within the spirit and scope of the appended claims.

10: 네트워크 20: 클라이언트
30: 레거시 시스템 40: 데이터베이스
100: 서비스 프레임워크 102: UI 인터페이스 컨트롤러
104: 워크플로우 컨트롤러 106: J2EE
108: O-R 데이터 컨트롤러 212: 모델
212a: 모델 인터페이스 214: 컨트롤
214a: 컨트롤 인터페이스 214b: 서블릿
216: 뷰 216a: 뷰 인터페이스
222: 채널 224: 커맨드
230-1: JSP 230-2: Ajax
230-3: Flex
10: Network 20: Client
30: legacy system 40: database
100: service framework 102: UI interface controller
104: Workflow controller 106: J2EE
108: OR data controller 212: model
212a: Model interface 214: Control
214a: Control Interface 214b: Servlet
216: view 216a: view interface
222: Channel 224: Command
230-1: JSP 230-2: Ajax
230-3: Flex

Claims (3)

XML Query 아키텍춰를 도입하여 DB의 형태에 관계없이 쿼리 작업을 가능하게 하는 모델 인터페이스 모듈과, 실제 개발자 로직을 수행하는 부분으로서 View단과 Model단을 구분하여 개발자에게 전후단의 종류와 상관없는 일관된 로직을 전개할 수 있도록 하는 커맨드 인터페이스 모듈과, 리퀘스트(Request)를 처리함으로써 기존의 오픈 프레임워크와 연동을 가능하게 하고, 임의의 뷰(View) 프로그램을 연결하더라도 프로그램의 수정없이 연동이 가능하도록 하는 컨트롤 로더와, JSP나 Ajax, Flex 등 뷰 프로그램을 연결하기 위한 뷰 인터페이스 모듈을 포함하는 프레임워크가 탑재되어 레거시 시스템이나 데이터베이스를 이용하여 클라이언트가 요구하는 서비스를 제공하는 웹 어플리케이션 프레임워크 시스템에 있어서,
JSP와 같은 UI 파트가 상기 컨트롤 로더로 서비스를 요청하면, 상기 컨트롤 로더가 해당 채널을 생성하고 파라메터를 수신하는 단계;
상기 컨트롤 로더가 해당 커맨드를 생성하여 컨트롤러로 전달하는 단계;
상기 컨트롤러가 파라메터를 부가하여 데이터베이스에 XQueryDAO와 XMLQuery로 처리를 요청하는 단계;
상기 데이터베이스는 요청을 처리한 후 결과를 반환하는 단계; 및
상기 컨트롤러는 결과를 해당 채널을 통해 유저 파트로 전달하는 단계를 포함하여
뷰(View), 컨트롤(Control), 모델(Model)로 구분하여 개발자간 역할 분담으로 유지보수기간을 단축할 수 있고, DB 설계 이후 해당 DB정보가 필요없이 개발 가능하여 중요 DB 내용을 노출하지 않고도 개발이 가능하며, 로컬 프로퍼티스(Local Properties)를 통해 환경 세팅이 용이한 것을 특징으로 하는 웹 어플리케이션 프레임워크 처리 방법.
By introducing the XML Query architecture, it is possible to classify the view module and the model module as the model interface module that enables the query operation regardless of the type of the DB and to perform the actual developer logic and to provide the developer with consistent logic A control loader that enables interworking with an existing open framework by processing a request and enables interlocking without modification of a program even if an arbitrary view program is connected, And a view interface module for connecting view programs such as JSP, Ajax, and Flex, is loaded in a web application framework system for providing a service requested by a client using a legacy system or a database,
When a UI part such as a JSP requests a service from the control loader, the control loader creates a corresponding channel and receives a parameter;
Generating a corresponding command by the control loader and transmitting the generated command to the controller;
Adding parameters to the controller and requesting the database to process XQueryDAO and XMLQuery;
The database processing the request and returning a result; And
The controller may include transmitting the results to a user part over the channel
It is possible to shorten the maintenance period by division of roles among viewers, controls, and models, and it is possible to develop without DB information after DB design, Wherein the web application framework can be developed and environment setting is easy through local properties.
삭제delete 삭제delete
KR1020120107363A 2012-09-26 2012-09-26 Method of processing web application framework KR101443879B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020120107363A KR101443879B1 (en) 2012-09-26 2012-09-26 Method of processing web application framework

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020120107363A KR101443879B1 (en) 2012-09-26 2012-09-26 Method of processing web application framework

Publications (2)

Publication Number Publication Date
KR20140040535A KR20140040535A (en) 2014-04-03
KR101443879B1 true KR101443879B1 (en) 2014-09-23

Family

ID=50650716

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020120107363A KR101443879B1 (en) 2012-09-26 2012-09-26 Method of processing web application framework

Country Status (1)

Country Link
KR (1) KR101443879B1 (en)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20000030817A (en) * 2000-03-20 2000-06-05 유영환 Server-side component for view contents separation and dynamic liking generation method for web-application development based on MVC model
US20030023953A1 (en) 2000-12-04 2003-01-30 Lucassen John M. MVC (model-view-conroller) based multi-modal authoring tool and development environment
US20090158243A1 (en) 2006-10-22 2009-06-18 Bolarinwa Akin B System and Method for Specification and Implementation of MVC (Model-View-Controller) based web applications.

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20000030817A (en) * 2000-03-20 2000-06-05 유영환 Server-side component for view contents separation and dynamic liking generation method for web-application development based on MVC model
US20030023953A1 (en) 2000-12-04 2003-01-30 Lucassen John M. MVC (model-view-conroller) based multi-modal authoring tool and development environment
US20090158243A1 (en) 2006-10-22 2009-06-18 Bolarinwa Akin B System and Method for Specification and Implementation of MVC (Model-View-Controller) based web applications.

Also Published As

Publication number Publication date
KR20140040535A (en) 2014-04-03

Similar Documents

Publication Publication Date Title
Rumpe Agile Modeling with the UML
Hoheisel User tools and languages for graph‐based Grid workflows
US9552194B2 (en) System and method for creating a graphical user interface within a manufacturing execution system
Rodríguez-Echeverría et al. Modernization of legacy web applications into rich internet applications
JP2007122135A (en) Development support device, development support method and development support program
JP2018514878A (en) A computer-implemented method for displaying software-type applications based on design specifications
Eichelberger et al. Experiences with the model-based generation of big data pipelines
JP2011525269A (en) Data management method for collaborative service-oriented workshops
KR20120014389A (en) Smartphone application product solution
CN116909553A (en) Page online development and local compiling operation system
KR20130119715A (en) Business process automation apparatus
Fujima Building a meme media platform with a JavaScript MVC framework and HTML5
JP2011521339A (en) Process management method in workshop for joint services
Gönczy et al. Methodologies for model-driven development and deployment: An overview
KR101443879B1 (en) Method of processing web application framework
US20100269089A1 (en) Method and system for generation of reusable design patterns
Mei et al. Internetware: A New Software Paradigm for Internet Computing
Clemente et al. Managing crosscutting concerns in component based systems using a model driven development approach
JP2010049439A (en) System construction method using software model and modeling device
Giachetti et al. Using UML profiles to interchange DSML and UML models
Sporer et al. Incorporation of model-based system and software development environments
JP5657183B2 (en) Method and apparatus for enabling a first computer program to execute application logic of a second computer program, for interfacing the first computer program and the second computer program And apparatus for generating computer program code for the same, a computer program, and a software interface for enabling a first computer program to execute application logic of a second computer program For providing information (computer program interface)
Cortellessa et al. Using ATL for transformations in software performance engineering: a step ahead of java-based transformations?
Ellner et al. An integrated tool chain for software process modeling and execution
Pillain et al. Towards an enactment mechanism for MODAL process models

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20180313

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20181017

Year of fee payment: 5

R401 Registration of restoration