아파치 속도

Apache Velocity
아파치 속도
Apache Velocity logo.svg
개발자아파치 소프트웨어 재단
안정적 해제
2.3 / 2021년 2월 27일; 11개월(2021-02-27)[1]
리포지토리속도 저장소
기록 위치자바
운영 체제크로스 플랫폼
유형템플릿 엔진
면허증아파치 라이선스 2.0
웹사이트velocity.apache.org

Apache Velocity는 2001년 4월에 처음 출시된 Java 기반의 템플릿 엔진으로 Java 코드에 정의된 참조 객체템플릿 언어를 제공한다.웹 애플리케이션(모델-뷰-컨트롤러 설계 패턴)에서 프리젠테이션 계층과 비즈니스 계층 간의 완전한 분리를 보장하는 것을 목표로 한다.

Velocity는 Apache Software Foundation이 주최하는 오픈 소스 소프트웨어 프로젝트다.아파치 라이선스 하에 발매된다.존 스콧 스티븐스파워AltiVec Velocity Engine에서 이름을 따왔다.PC G4 칩.

사용하다

Velocity를 사용하는 애플리케이션의 일반적인 유형은 다음과 같다.

  • AWS API Gateway body mapping template
    AWS API 게이트웨이 본문 매핑 템플릿
    웹 응용 프로그램:웹 개발자들HTML 페이지 구조를 렌더링한다.내용은 동적 정보로 채워진다.이 페이지는 VelocityViewServlet 또는 Velocity를 지원하는 여러 프레임워크를 사용하여 처리된다.
  • 소스 코드 생성:Velocity는 템플릿을 기반으로 Java, SQL 또는 PostScript 소스 코드를 생성하는 데 사용할 수 있다.많은 오픈 소스 및 상용 개발 소프트웨어 패키지는 Velocity를 이러한 방식으로 사용한다.[2]
  • 자동 전자 메일:많은 응용 프로그램이 계정 등록, 암호 알림 또는 자동 전송된 보고서를 위해 자동 전자 메일을 생성한다.Velocity를 사용하면 이메일 템플릿을 Java 코드에 직접 내장하지 않고 텍스트 파일에 저장할 수 있다.
  • XML 변환:Velocity는 XML 파일을 읽고 Velocity 템플릿에서 사용할 수 있도록 하는 Ankia라는 Ant 태스크를 제공한다.일반적인 "xdoc" 형식으로 저장된 소프트웨어 문서를 양식화된 HTML 문서로 변환하는 것이 일반적인 응용 프로그램이다.
  • AWS API Gateway는 차체 매핑 템플릿에 Apache Velocity 엔진을 사용 - JSON이 출력됨

코드 예제

다음 템플릿:

## Velocity Hello World <html> <body> #set($foo = "Velocity" ) ## 에 Hello $foo World! </body> </html>이 있다.

Velocity에서 처리한 HTML:

<html> <body> Hello Velocity World! </body> </html>

조건을 사용하는 다른 예:

#만일( $foo < 10 ) **북으로 이동*** #그렇지 않으면( $foo == 10 ) **동부** #그렇지 않으면( $술집을 내다 == 6 ) **남쪽으로 이동** #다른 **서방** #종지부를 찍다 

DynamoDB HTTP용 AWS API 게이트웨이 본문 매핑 템플릿:

{ "TableName":"행복한 시장가" "KeyConditionExpression": "pk = :pk AND begins_with(sk, :sk)","     #만일($입력하다.모조품('프로젝트 상태') == 'archived') "FilterExpression": "projectStatus = :Archive",     #다른 "FilterExpression": "ProjectStatus = :InProgress OR projectStatus = :Completed",     #종지부를 찍다 "ExpressionAttributeValues":{ ":message":{ "S": "프로젝트" }, ":sk":{ S: "$문맥.인가자.주장하다.이메일을 보내다" },         #만일($입력하다.모조품('프로젝트 상태') == 'archived') ":아카이브됨":{ "S": "보관됨" }         #다른 ":InProgress":{ "S": "진행 중" }, ":완료됨":{ "S": "완료됨" }         #종지부를 찍다 } } 

선택적 배열의 다른 예. 조건이 없으면 잘못된 결과 JSON으로 인해 실패함:

{ "email": "$문맥.인가자.주장하다.이메일을 보내다"     #만일($입력하다.모조품('countries') != "") , "message":$입력하다.모조품('countries')     #종지부를 찍다 } 

Apache Velocity 템플릿의 구문 및 전체적인 개념은 현재 오픈 소스 프로젝트인 구형 WebMacro 템플릿 엔진의 구문과 유사하다.[citation needed]

참고 항목

참조

  1. ^ "Apache Velocity - Project News". velocity.apache.org. Apache Software Foundation. Retrieved 2021-04-02.
  2. ^ "PoweredByVelocity". Velocity Wiki. Wiki.apache.org. 2009-12-30. Archived from the original on 23 March 2010. Retrieved 2010-03-29.

참고 문헌 목록

외부 링크