2014-06-13 1 views
0

저는 Java와 JBoss 및 JDeveloper를 처음 사용합니다. 내 레거시 프로젝트는 다음과 같은 persistence.xml 파일을 가지고 있습니다 :EJB에서 persistence.xml의 값은 무엇을 의미합니까?

<persistence-unit name="DoDSRMGR"> 
    <jta-data-source>java:/DoDSRDS</jta-data-source> 
    <class>dodsr.ManifestsPass1</class> 
    <class>dodsr.model.ManifestsPass2</class> 
     <properties> 
     <property name="hibernate.dialect" value="org.hibernate.dialect.Oracle10gDialect"/> 
     <property name="javax.persistence.jtaDataSource" value="java:/DoDSRDS"/> 
     </properties> 
     </persistence-unit> 
    </persistence> 

내 질문은 무엇을 의미합니까? 또한이 파일은 EAR 파일 META-INF 또는 JAR 파일 META-INF에 속합니다. name = "DoDSRMGR"지정의 의미는 무엇입니까?이 이름은 Java 프로그램에서 호출 할 때 또는 응용 프로그램 이름 일 때 무엇입니까? 또한 "java :/DoDSRDS"는 무엇입니까?

데스크톱 응용 프로그램에서이 bean을 호출하는 방법입니까? (DodsrUserSessionEJB) ctx.lookup ("/ dodsr /"+ ejbName + "/ remote");

+0

특정 질문이 있습니까? 아니면 내가 원하는 줄을 읽었습니까? – hd1

+0

@ hd1 당신이 내 마음을 읽을 수 있다면 멋질 것입니다,하지만 다시, 거기서 길을 잃을 수도 있습니다. 어쨌든 질문을 편집했습니다 .. –

+0

http://docs.oracle.com/javaee/7/tutorial/doc/persistence-intro003.htm –

답변

1

<persistence-unit name="DoDSRMGR">이 줄을 사용하면 지속성 단위에 이름을 지정할 수 있습니다.

EntityManager eMgr = Persistence.createEntityManagerFactory("Your persistence unit name").createEntityManager(); 

하나의 EntityManager는 당신이 선택 업데이트를 지속하고 데이터베이스에 /에서 JPA 엔티티를 제거하는 데 도움이 대상입니다 :이 방법에 EntityManager를 인스턴스화 할 때 영구 장치 이름을 사용합니다.

<jta-data-source>java:/DoDSRDS</jta-data-source>이 줄은 지속성 트랜잭션 (엔티티의 유지, 업데이트 및 제거)을 관리하는 방법을 알려줍니다. 이 줄을 지정하지 않으면 데이터베이스에서 엔티티를 유지, 업데이트 또는 제거 할 때마다 트랜잭션 인스턴스를 먼저 가져와 엔티티를 유지/업데이트/제거하고 호출 한 후에 begin()으로 호출해야합니다 commit() 방법.

XML에 이미 jta-data-source 요소가 있으므로 begin()commit() 메서드를 수동으로 호출 할 필요가 없습니다. 응용 프로그램 서버는 값으로 식별되는 트랜잭션 자원을 통해 트랜잭션을 관리합니다. "java:/DoDSRDS"

이 XML 파일은 META-INF 또는 WEB-INF 폴더에 위치 할 수 있습니다.

+0

감사합니다! 저에게 많은 것을 설명합니다, expecially 저는이 세상 모든면에서 새로운 것입니다. 저는 받아 들일 것입니다. 이제 저는 여러분이 좀더 살펴보고 저를 도울 수 있기를 희망합니다. JBoss가 7은 빈 파일을 시작하려고 시도했다. –