Java 콘솔 앱이 있습니다. Hibernate를 사용하여 데이터베이스를 관리한다. (MySQL을 사용한다.) 자, 나는 Hibernate가 Tomcat 컨텍스트로부터 데이터 소스를 사용하기를 원한다. 아무도 어떻게 말해 줄 수 있습니까?Tomcat 컨텍스트를 사용하여 Java 콘솔 앱과 Hibernate를 사용하려면 어떻게해야합니까?
답변
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");
응답 해 주셔서 감사합니다. 나는 이것이 웹 애플 리케이션을위한 구성이라고 생각한다. 제 경우에는 자바 콘솔 앱입니다. 아파치에서 Tomcat wiki와 Tomcat 문서를 읽었지만 운이 없다. – hainp
@hainp 왜 그 응용 프로그램을 tomcat에 저장하려고합니까? 어떤 경우 든 파일에서 직접 데이터를 추출 할 수 있습니다. 거기에서 데이터를 가져 오는 웹 응용 프로그램이있는 경우 I에서 둘째로 볼 수있는 세 번째 위치 (예 : 속성 파일)를 정의 할 수 있습니다. 연결 데이터를 두 번 저장하십시오. –
편집 된 응답 –
http://docs.jboss.org/hibernate/core/4.0/devguide/en-US/html/ch01.html#d0e404 여기 Hibernate에서이 작업을 수행하는 방법을 알려주는 문서입니다. – Sean
감사합니다. Sean, I 이 기사를 읽는 중 – hainp