2012-02-03 1 views
1

Java 콘솔 앱이 있습니다. Hibernate를 사용하여 데이터베이스를 관리한다. (MySQL을 사용한다.) 자, 나는 Hibernate가 Tomcat 컨텍스트로부터 데이터 소스를 사용하기를 원한다. 아무도 어떻게 말해 줄 수 있습니까?Tomcat 컨텍스트를 사용하여 Java 콘솔 앱과 Hibernate를 사용하려면 어떻게해야합니까?

+0

http://docs.jboss.org/hibernate/core/4.0/devguide/en-US/html/ch01.html#d0e404 여기 Hibernate에서이 작업을 수행하는 방법을 알려주는 문서입니다. – Sean

+0

감사합니다. Sean, I 이 기사를 읽는 중 – hainp

답변

1

Tomcat wiki에는 필요한 구성이 포함되어 있습니다. 의 context.xml에서

:

WEB-INF/web.xml에
<?xml version="1.0" encoding="UTF-8"?> <Context antiJARLocking="true" path="/DVDStore"> 
    <Resource auth="Container" 
    driverClassName="com.mysql.jdbc.Driver" maxActive="30" maxIdle="10" maxWait="10000" name="jdbc/sakila" password="*****" 
    type="javax.sql.DataSource" url="jdbc:mysql://localhost/sakila" username="*****"/> 
</Context> 

. hibernate.cfg.xml 내에서

<resource-ref> 
    <description>This is a MySQL database connection</description> 
    <res-ref-name>jdbc/sakila</res-ref-name> 
    <res-type>javax.sql.DataSource</res-type> 
    <res-auth>Container</res-auth> 
</resource-ref> 

:

<!-- using container-managed JNDI --> 
<propertyname="hibernate.connection.datasource"> 
    java:comp/env/jdbc/sakila 
</property> 

당신은 찾을 수 있습니다 더에서 The TomcatHibernate Wiki


편집 :

직접 컨텍스트에 액세스하려는 경우

, 이것은 문제가되는 방법입니다

ServletContext sc = getServletContext(); 
    String parameterValue = sc.getInitParameter("parameterName"); 
+0

응답 해 주셔서 감사합니다. 나는 이것이 웹 애플 리케이션을위한 구성이라고 생각한다. 제 경우에는 자바 콘솔 앱입니다. 아파치에서 Tomcat wiki와 Tomcat 문서를 읽었지만 운이 없다. – hainp

+0

@hainp 왜 그 응용 프로그램을 tomcat에 저장하려고합니까? 어떤 경우 든 파일에서 직접 데이터를 추출 할 수 있습니다. 거기에서 데이터를 가져 오는 웹 응용 프로그램이있는 경우 I에서 둘째로 볼 수있는 세 번째 위치 (예 : 속성 파일)를 정의 할 수 있습니다. 연결 데이터를 두 번 저장하십시오. –

+0

편집 된 응답 –