EJB之JPA(数据源配置)

EJB3.0规范制定的时候,hibernate创始人主要负责JPA这块.所以EJB3的JPA与Hibernate基本上是差不多的.可以把JPA看成是hibernate的一个子集.

现在就看一下JPA的数据源配置.

JPA数据源配置:

进入JBOSSHOME(JOBSS安装目录)\docs\examples\jca里面.可以看到很多的xml文件.选择对应的数据库XML.本次使用的是oracle数据库,所以拷贝oracle-ds.xml文件

到JBOSSHOME\\server\default\deploy目录下.然后修改oracle-ds.xml.

<?xml version="1.0" encoding="UTF-8"?>

<!-- ===================================================================== -->
<!--                                                                       -->
<!--  JBoss Server Configuration                                           -->
<!--                                                                       -->
<!-- ===================================================================== -->

<!-- See http://www.jboss.org/community/wiki/Multiple1PC for information about local-tx-datasource -->
<!-- $Id: oracle-ds.xml 88948 2009-05-15 14:09:08Z jesper.pedersen $ -->
<!-- ==================================================================== -->
<!--  Datasource config for Oracle originally from Steven Coy             -->
<!-- ==================================================================== -->


<datasources>
  <local-tx-datasource>
  <!--指定JNDI的名字(这个在后面要用到),还有链接地址-->
    <jndi-name>OracleDS</jndi-name>
    <connection-url>jdbc:oracle:thin:@localhost:1521:orcl</connection-url>
    
     <!--主要修改下面的参数,这个是链接方式,用户名,密码-->
    <driver-class>oracle.jdbc.driver.OracleDriver</driver-class>
    <user-name>scott</user-name>
    <password>tiger</password>
 
    <exception-sorter-class-name>org.jboss.resource.adapter.jdbc.vendor.OracleExceptionSorter</exception-sorter-class-name>

      <metadata>
         <type-mapping>Oracle9i</type-mapping>
      </metadata>
  </local-tx-datasource>

</datasources>

这里配置完以后,我们新建一个EJB project.

注:上图的链接名称应该为OracleDS

 

这个时候我们需要把Oracle的驱动复制到JBOSSHOME\server\default\lib目录下.然后启动JBOSS就可以了.

我们也可以打开上面这个persistence.xml文件.看一下里面的配置.

<?xml version="1.0" encoding="UTF-8"?>
<persistence xmlns="http://java.sun.com/xml/ns/persistence"
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
    xsi:schemaLocation="http://java.sun.com/xml/ns/persistence
    http://java.sun.com/xml/ns/persistence/persistence_1_0.xsd" version="1.0">
    
    <!-- 这个就是配置的JTA的名称,程序里需要用到,JTA数据源可以配置多个,分布式部署. -->
<persistence-unit name="business" transaction-type="JTA">
    <!--这个就是刚才配置的数据源.  -->
    <jta-data-source>java:/OracleDS</jta-data-source>
<properties>
    <!-- oracle数据库方言 -->
     <property name="hibernate.dialect" value="org.hibernate.dialect.Oracle9Dialect" />
    <!-- mysql数据库方言 -->
   <property name="hibernate.dialect" value="org.hibernate.dialect.MySQLDialect"/>
     <!-- 显示最终执行的SQL -->
    <property name="hibernate.show_sql" value="true"/>
    <!-- 自动创建数据库表 -->
     <property name="hibernate.hbm2ddl.auto">update</property>
    <!-- <property name="hibernate.format_sql" value="true"/> -->
    </properties>
  </persistence-unit>
  
</persistence>

现在 数据源已经配置好了.下一章将简单的说一小EJB的持久化.

posted @ 2012-09-15 19:29  宁静致远_  阅读(3128)  评论(0编辑  收藏  举报