■Torque사용을 위한 기초작업들
http://jakarta.apache.org/builds/jakarta-turbine/torque/release/3.1/에서
torque-3.1.zip <==실행
◦ 클래스 패스는 lib안의 필요한 것(어떤 것? )에 통한다
torque-gen-3.1.zip <==생성
torque-3.1.zip에 있는 lib폴더 내부의 jar파일들을 사용하는 웹폴더(즉,C:\Tomcat 5.0\webapps-test)의 C:\Tomcat 5.0\webapps-test\ROOT\WEB-INF\lib 에 저장한다. lib폴더엔 스트럿의 jar파일과 중복되는 부분이 있어 torque의 lib폴더의 jar파일의 일부만 가져와서 덮어쓴다. 그 내용은 다음과같다
avalon-framework-4.1.4.jar
commons-configuration-1.0-dev-3.20030607.194155.jar
commons-dbcp-20030825.184428.jar
commons-pool-20030825.183949.jar
jcs-20030822.182132.jar
jdbc-2.0.jar
jndi-1.2.1.jar
junit-3.8.1.jar
log4j-1.2.8.jar
logkit-1.0.1.jar
stratum-1.0-b3.jar
torque-3.1.jar
village-2.0-dev-20030825.jar
xercesImpl-2.0.2.jar
xmlParserAPIs-2.0.2.jar
C:\javatool\torque-3.1에 있는 설정파일들을 사용하는 웹폴더(C:\Tomcat 5.0\webapps-test\ROOT\WEB-INF)의 WEB-INF에 복사한다.
web.xml 에 Torque를 설정해준다.
<servlet>
<servlet-name>initTorque</servlet-name>
<!--torque를 사용할 때 매번 초기화 하는부분을 이 설정파일(web.xml)에서 설정해준다.-->
<servlet-class>initialize.TorqueInit</servlet-class>
<init-param>
<param-name>config</param-name>
<!--torque를 사용할 때 참조할 properties파일 위치 설정-->
<param-value>/WEB-INF/classes/properties/Torque.properties</param-value>
</init-param>
<init-param>
<param-name>debug</param-name>
<param-value>0</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
========================================================
<!--torque를 사용할 때 매번 초기화 하는부분을 이 설정파일(web.xml)에서 설정해준다.-->
<servlet-class>initialize.TorqueInit</servlet-class> 파일이름 : TorqueInit.java(임의로 작성)
package initialize;
/**
* @author : Kwoen BongJe(2002-12-21)
*/
import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import org.apache.torque.Torque;
public class TorqueInit extends HttpServlet{
private static boolean hasInitialized = false;
public void init() throws ServletException{
synchronized(TorqueInit.class){
if(!hasInitialized){
try{
String propFileName = getServletConfig().getInitParameter("config");
if(propFileName==null) {
propFileName="/WEB-INF/classes/properties/Torque.properties";
}
String propFile = getServletContext().getRealPath(propFileName);
Torque.init(propFile);
hasInitialized = true;
}catch(Exception e){
throw new ServletException("\nComstar.framework : Can't initialize Torque!\n"+e);
}
}
}
}
}
===================================================
<!--torque를 사용할 때 참조할 properties파일 위치 설정-->
<param-value>/WEB-INF/classes/properties/Torque.properties</param-value> 프로퍼티 파일을 사용환경에 맞게 변경해주어야 한다. 아래는 예제파일
torque.applicationRoot = /usr/local/tomcat
log4j.category.org.apache.torque = ALL, org.apache.torque
log4j.appender.org.apache.torque = org.apache.log4j.FileAppender
log4j.appender.org.apache.torque.file = ${torque.applicationRoot}/logs/testdb/torque.log
log4j.appender.org.apache.torque.layout = org.apache.log4j.PatternLayout
log4j.appender.org.apache.torque.layout.conversionPattern = %d [%t] %-5p %c - %m%n
log4j.appender.org.apache.torque.append = false
torque.defaults.pool.logInterval = 0
torque.defaults.pool.connectionWaitTimeout = 10
torque.defaults.pool.defaultMaxConnections = 80
torque.defaults.pool.maxExpiryTime = 3600
torque.defaults.connection.driver = org.gjt.mm.mysql.Driver
torque.defaults.connection.url = jdbc:mysql://localhost:3306/testdb?useUnicode=true&characterEncoding=euc-kr
torque.defaults.connection.user = test
torque.defaults.connection.password = test
torque.database.default=testdb
torque.database.testdb.adapter=mysql
torque.dsfactory.testdb.factory=org.apache.torque.dsfactory.SharedPoolDataSourceFactory
torque.dsfactory.testdb.pool.defaultMaxActive=10
torque.dsfactory.testdb.pool.testOnBorrow=true
torque.dsfactory.testdb.pool.validationQuery=SELECT 1
torque.dsfactory.testdb.connection.driver = org.gjt.mm.mysql.Driver
torque.dsfactory.testdb.connection.url = jdbc:mysql://localhost:3306/testdb?useUnicode=true&characterEncoding=euc-kr
torque.dsfactory.testdb.connection.user = test
torque.dsfactory.testdb.connection.password = test
torque.idbroker.cleverquantity=true
torque.manager.useCache = true
======
설치한 torque-gen폴더 아래에 C:\javatool\torque-gen-3.1 torque가 사용될 폴더를 만들어준다 폴더이름은 임으로 만들지만 프로젝트 명으로 하는 것이 좋겠다.
C:\javatool\torque-gen-3.1\webapps-address 아래에 schema 폴더를 만든다.
schema 폴더에 사용할 DB에서의 사용할 태이블 구조를 xml형식으로 만든다
이때 파일 이름의 형식은 “*-schema.xml”의 형식을 따라야 한다. 이는 C:\javatool\torque-gen-3.1에 있는build-torque.xml파일을 torque가 참조한다. build-torque.xml파일에는 DB를 생성과 참조 등등이 정의 되어있다.
참고자료 : http://db.apache.org/torque-31/generator/schema-reference.html
<예>
<?xml version="1.0" encoding="ISO-8859-1" standalone="no"?>
<!DOCTYPE database SYSTEM "http://db.apache.org/torque/dtd/database_3_1.dtd">
<!-- ==================================================================== -->
<!-- -->
<!-- I D B R O K E R S C H E M A -->
<!-- -->
<!-- ==================================================================== -->
<!-- This is the XML schema use by Torque to generate the SQL for -->
<!-- ID_TABLE table used by the id broker mechanism in Torque. -->
<!-- ==================================================================== -->
<!-- @author: <a href="mailto:jvanzyl@apache.org">Jason van Zyl</a> -->
<!-- @version $Id: id-table-schema.xml,v 1.2 2003/07/24 12:40:41 mpoeschl Exp $ -->
<!-- ==================================================================== -->
<database name="struts-address">
'JAVA > JSP_Servlet' 카테고리의 다른 글
[펌] JavaServer Faces 입문 (0)
2004.04.01
[펌] Jakarta Digester 학습하기 (0)
2004.04.01
[펌] Log4J... (0)
2004.03.30
[펌] JSF 사용하기 (0)
2004.03.29
[펌] Struts, Tiles, JavaServer Faces 통합하기 (0)
2004.03.29