To add a datasource connecting to Oracle database, save the Oracle driver ojdbc7.jar into CATALINA_HOME/lib. Then add a line with the connection details into CATALINA_HOME/conf/context.xml:
<Resource name="jdbc/saphirOracleDB" auth="Container" type="javax.sql.DataSource" maxTotal="20" maxIdle="30" maxWait="10000" username="username" password="password" driverClassName="oracle.jdbc.OracleDriver" url="jdbc:oracle:thin:@//hostname:1555/servicename"/>
In a sample persistence.xml depending on the created datasource, the reference to the datasource is obtained using JNDI name java:/comp/env/jdbc/saphirOracleDB
<?xml version="1.0" encoding="UTF-8"?> <persistence version="2.1" xmlns="http://xmlns.jcp.org/xml/ns/persistence" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/persistence http://xmlns.jcp.org/xml/ns/persistence/persistence_2_1.xsd"> <persistence-unit name="Saphir" transaction-type="RESOURCE_LOCAL"> <provider>org.eclipse.persistence.jpa.PersistenceProvider</provider> <non-jta-data-source>java:/comp/env/jdbc/saphirOracleDB</non-jta-data-source> <class>entities.sqlresultmapping.DummyForMapping</class> </persistence-unit> </persistence>
The entity manager can be obtained in the web application by using the specified persitence unit name:
private static EntityManagerFactory emf = Persistence.createEntityManagerFactory("Saphir"); private static EntityManager em = emf.createEntityManager();
No comments:
Post a Comment