JSP에서는 Class의 클래스에서 forName 메소드를 이용해 클래스의 이름을 만들어 낼 수 있다.
<<JSP>>
Action 작업Action = null;
try
{
Class ActionType = Class.forName("mvc."+request.getParameter("type"));
작업Action = (Action)ActionType.newInstance();
}catch(ClassNotFoundException ex1){
System.out.println("클래스 없음");
}catch(InstantiationException ex2){
System.out.println("메모리 에러");
}catch(IllegalAccessException ex3){
System.out.println("클래스 접근 에러");
}
위와 같은 방법으로 최초에 입력받는 QueryString의 값을 이용하여 클래스를 만들어낼 수 있다.
그렇게 만들어진 클래스와 abstract, interface를 활용함으로써 여러가지 활용이 가능하다.
<<PHP>>
$className='SomeClass';
$var=new $className();
PHP에서는 위와 같은 방법을 사용함으로써 클래스 명을 변수처럼 활용할 수 있다.
가령 페이지 한개를 활용해 QueryString에 따라 여러가지 페이지로 분산 시킬려고 할 경우, 기존에는 if else 문, 또는 switch case 를 활용해서 불러오는 값을 다르게하거나 페이지를 강제로 이동 시키는 방법이 있었다. 하지만 위의 기능들을 활용하면, QueryString 자체를 Class명으로 하여 호출 할 수 있기 때문에 코드가 매우 간결해지며 좀 더 순수한 기능만을 가진 클래스가 된다.
'LINUX' 카테고리의 다른 글
| JSP, php에서 문자열로 클래스 생성하기 (0) | 2010/01/21 |
|---|---|
| mysql 계정 추가 (0) | 2009/03/26 |
| vsftp (0) | 2009/03/26 |
| proftpd 설치법 (0) | 2009/03/26 |
