Anyframe

오픈소스 비즈니스 컨설팅
둘러보기로 가기 검색하러 가기

삼성에서 공개한 오픈소스 기반의 Java 어플리케이션 개발 프레임워크인 Anyframe을 정리 한다. Anyframe은 오픈 소스 커뮤니티를 통해서 어플리케이션 개발 시 공통으로 사용되는 오픈 소스 기반의 어플리케이션 프레임워크와 이를 쉽게 사용할 수 있도록 체계적인 가이드 제공 한다.

Anyframe 개요

  • Anyframe은 업무용 프로그램 개발을 효과적으로 진행하기 위해 기본 아키텍처, 기술 공통 서비스, 템플릿 등을 제공 하는 애플리케이션 프레임워크로서 이를 활용 때 설계 와 개발 기간을 단축 하고 유지보수를 용이하게 진행 할 수 있다.
  • Anyframe은 자바 기반의 애플리케이션 프레임워크로써 업계 표준으로 활용 되는 다양한 오픈 소스를 활용해 구성돼 있으며, 오픈 소스를 활용해 비즈니스 애플리케이션을 개발하는 과정에서 어려움을 느끼게 되는 오픈 소스의 선택, 활용 방법, 테스트 등에 대한 솔루션을 정형화된 가이드와 사례를 통해 제공하고 있다.
  • 애플리케이션 프레임워크 : 업무용 애플리케이션 개발을 효과적으로 진행 하기 위해 SW의 기본 골격과 공통 모듈 등을 모아 놓은 것으로 이를 활용하면 설계와 개발 기간을 단축 되고 유지보수가 용이 하다.

설치 가이드

  • Anyframe Core 설치
  • Anyframe Core 다운로드 사이트에서 Anyframe-core-3.2.1-bin_0.zip 파일을 다운로드하여 c:/anyframe/ 폴더에 압축을 풉니다.
  • c:/anyframe/lib/ 폴더가 Anyframe Core가 설치될 폴더 입니다.
  • Eclipse에 Anyframe_LIB 라는 User Library를 설정
  • Eclipse에서 "window -> preference -> Java -> Build Path -> User Libraries" 메뉴를 선택 합니다.
  • New 버튼을 클릭하고, 이름 항목에 'Anyframe_LIB' 라고 입력 합니다.
  • 리스트 항목중 'Anyframe_LIB'를 선택하고 Add JARs 버튼을 클릭 합니다.
  • c:/anyframe/lib/ 폴더 내의 모든 jar파일들을 선택 합니다.
  • Eclipse에 Anyfram 설치
  • Anyframe Project 생성
  • Eclipe의 Package Explorer에서 오른쪽 마우스를 누릅니다.
  • "New -> Other... -> Anyframe -> Project"를 선택한 후 "Next" 버튼을 누릅니다.
  • 참고 문헌

사용자 가이드

관리자 가이드

Anyframe 구성

구성 요소 상세 설명
Anyframe Core
  • Spring에 다양한 오픈 소스를 통합 및 확장하여 구성된 어플리케이션 프레임워크
  • Spring, Hibernate, Log4j 1.3alpha8, Hibernate 3.2.6.ga, Axis, OSCache 2.4, Quartz 1.5.0, Apache Commons Projects (DBCP, BeanUtils, Collections, Logging ...)
Anyframe Web
  • MVC 기반의 아키텍처를 준수하여 웹 어플리케이션의 프리젠테이션 레이어를 구조적으로 개발할 수 있도록 지원하는 웹 프레임워크
  • Spring MVC 2.5.X, Struts 1.2.7, RIA 등
Anyframe Tools
  • 개발 도구
  • Anyframe Query Manager
  • Anyframe Codegen
  • Anyframe Config Editor
  • Module Mgmt. : Anyframe OSGi를 이용하여 개발 시 모듈 배포 및 모니터링 기능을 제공한다.
  • Spring IDE, Properties Editor, SQL Explorer, WTP, Eclipsework
  • 관리 도구
  • Anyframe Monitoring Tool : 오픈 소스 InfraRED 적용
Development Environment
  • SCM : Subversion
  • 이슈 관리 : Jira
  • Continuous Integration : QuickBuild, JUnit, Maven

Anyframe Gen

  • Anyframe을 바탕으로 기존 방식보다 훨씬 쉽고 빠르게 웹 애플리케이션을 개발할 수 있도록 Scaqffolding, 코드 생성 기능 등을 제공 한다.
  • 2009년 7월초 Anyframe Gen 1.0.0.m1 릴리즈 예정
  • 사용 사례
//--- Anyframe Gen 설치
Anyframe-gen-1.5.1-setup.jar을 실행하여 Anyframe Gen을 설치 한다.

//--- Project 생성
cd d:/www_project/anyframe/anyframeGen/applications/approve
gen create-project -pjtname approve -package com.jopenbusiness.approve

cd applications/approve
gen install foundation -package  com.jopenbusiness.sample

build.properties에서 DB 관련 정보 변경
D:\www_project\anyframe\anyframeGen\db\lib에 mysql-connector-java-5.1.7-bin.jar 복사
gen change-db

//--- Database Table에서 Model 생성
gen create-model -table approve_attach_file -basepackage com.jopenbusiness.approve.domain

//--- Model에서 Control 생성
-	dbunit 2.2.2 적용 (table의 column명의 대소문자 구분 오류 발생 해소)
	-	http://www.dbunit.org/
	-	D:\www_project\anyframe\anyframeGen\cli\lib/dbunit-2.4.5.jar 파일을 지우고
		dbunit-2.4.8.jar를 복사 한다.
	-	D:\www_project\anyframe\anyframeGen\cli/scripts/code-generation.xml 파일에서
		org.dbunit.ext.oracle.OracleDataTypeFactory 대신 org.dbunit.ext.mysql.MysqlDataTypeFactory 사용
		<property name="datatypeFactory" value="org.dbunit.ext.mysql.MysqlDataTypeFactory" />
	-	여전히 오류가 발생하나 그냥 다음으로 넘어감

gen create-crud ApproveAttachFile -package domain -scope service

//--- Model에서 View 생성
gen create-crud ApproveAttachFile -package domain -scope web

//--- war 파일 제작
gen build -war
//	gen build -deploy jar -war
  • 참고 문헌

Eclipse Plugin

참고 문헌