MVC 디자인패턴과 JSTL
Updated:
MVC Design Pattern
MVC 디자인 패턴은 디자인 패턴(기능 별로 역할을 나누는 방식)의 한 종류로 비즈니스 로직, 프레젠테이션 로직, 데이터를 나누는 방식이다.
- Model
- Database 관련 영역
- 일반적으로 CI의 모델은 데이터베이스 테이블에 대응된다. 이를테면 Topic이라는 테이블은 topic_model이라는 Model을 만든다. 그런데 이 관계가 강제적이지 않기 때문에 규칙을 일관성 있게 정의하는 것이 필요하다.
- View
- 사용자가 보는 화면
- View는 클라이언트 측 기술인 html/css/javascript들을 모아둔 컨테이너이다.
- Controller
- View와 Model을 연결해서 Control
- 사용자가 접근 한 URL에 따라서 사용자의 요청사항을 파악한 후에 그 요청에 맞는 데이터를 Model에 의뢰하고, 데이터를 View에 반영해서 사용자에게 알려준다.
위의 그림 설명
- 사용자가 웹사이트에 접속한다. (Uses)
- Controller는 사용자가 요청한 웹페이지를 서비스 하기 위해서 모델을 호출한다. (Manipulates)
- 모델은 데이터베이스나 파일과 같은 데이터 소스를 제어한 후에 그 결과를 리턴한다.
- Controller는 Model이 리턴한 결과를 View에 반영한다. (Updates)
- 데이터가 반영된 VIew는 사용자에게 보여진다. (Sees)
JSTL
JSTL은 JSP Standard Tag Library의 약자로 JSP 개발을 더 편하게 해주기 위한 태그들의 집합 라이브러리이다. JSTL의 장점으로는 JSTL을 사용함으로써 개발이 빨라지고 코드 활용성이 높아지고 scriptlet tag를 사용할 필요가 없어진다.
JSTL Tags
JSTL 크게 다섯가지 종류의 태그들을 지원한다.
Tag Name | Description |
---|---|
Core tags | The JSTL core tag provide variable support, URL management, flow control, etc. The URL for the core tag is http://java.sun.com/jsp/jstl/core. The prefix of core tag is c. |
Function tags | The functions tags provide support for string manipulation and string length. The URL for the functions tags is http://java.sun.com/jsp/jstl/functions and prefix is fn. |
Formatting tags | The Formatting tags provide support for message formatting, number and date formatting, etc. The URL for the Formatting tags is http://java.sun.com/jsp/jstl/fmt and prefix is fmt. |
XML tags | The XML tags provide flow control, transformation, etc. The URL for the XML tags is http://java.sun.com/jsp/jstl/xml and prefix is x. |
SQL tags | The JSTL SQL tags provide SQL support. The URL for the SQL tags is http://java.sun.com/jsp/jstl/sql and prefix is sql. |
JSTL Index
JSTL Tutorial
JSTL Core Tags
-
Core tag에는 14가지가 있다. JSTL core 라이브러리를 JSP 페이지에 포함시키는 문법은 다음과 같다.
<%@ taglib uri=”http://java.sun.com/jsp/jstl/core” prefix=”c” %>
JSTL Function Tags
-
Function tag는 여러 standard 함수들을 제공한다. 대부분 string 조작 관련 함수들이다. JSTL function 라이브러리를 JSP 페이지에 포함시키는 문법은 다음과 같다.
- <%@ taglib uri=”http://java.sun.com/jsp/jstl/functions” prefix=”fn” %>
JSTL Formatting Tags
-
Formatting tag는 숫자나 날짜등의 포멧과 관련된 라이브러리이다. 보통 국제적인 웹사이트에서 국제 표준 시간과 날짜를 표시할 때 많이 쓰인다. JSTL Formatting tag 라이브러리를 JSP 페이지에 포함시키는 문법은 다음과 같다.
<%@ taglib uri=”http://java.sun.com/jsp/jstl/fmt” prefix=”fmt” %>
JSTL XML Tags
-
JSTL XML tag는 JSP의 방식으로 XML 문서를 생성하고 조작하는 데에 쓰인다. JSTL XML tag 라이브러리를 JSP 페이지에 포함시키는 문법은 다음과 같다.
<%@ taglib uri=”http://java.sun.com/jsp/jstl/xml” prefix=”x” %>
JSTL SQL Tags
-
JSTL sql tag는 SQL과 관련된 편의를 제공한다. SQL tag library는 tag들이 RDBMS(Relational Databases - ex: Microsoft SQL Server, mySQL, Oracle)와 상호작용 할 수 있도록 해준다. JSTL sql tag 라이브러리를 JSP 페이지에 포함시키는 문법은 다음과 같다.
<%@ taglib uri=”http://java.sun.com/jsp/jstl/sql” prefix=”sql” %>
Leave a comment