EJB实体Bean开发的数据库连接采用数据源连接池的方式,因此需要在JBoss中配置数据源连接。
从D:\jboss-4.2.0.GA\docs\examples\jca中拷贝项目需要的数据库连接模版,例如: 到项目的发布目录下,例如:D:\jboss-4.2.0.GA\server\default\deploy,打开该文件,进行配置的修改。
<?xml version="1.0" encoding="UTF-8" ?> - <!-- $Id: mysql-ds.xml 41016 2006-02-07 14:23:00Z acoliver $ --> <!-- Datasource config for MySQL using 3.0.9 available from: http://www.mysql.com/downloads/api-jdbc-stable.html --> <datasources> <local-tx-datasource> <jndi-name>jdbc/mysql</jndi-name> <connection-url>jdbc:mysql://localhost:3306/testdb</connection-url> <driver-class>com.mysql.jdbc.Driver</driver-class> <user-name>root</user-name> <password>mysqladmin</password> <exception-sorter-class-name>org.jboss.resource.adapter.jdbc.vendor.MySQLExceptionSorter</exception-sorter-class-name> <!-- should only be used on drivers after 3.22.1 with "ping" support <valid-connection-checker-class-name>org.jboss.resource.adapter.jdbc.vendor.MySQLValidConnectionChecker</valid-connection-checker-class-name> --> <!-- sql to call when connection is created <new-connection-sql>some arbitrary sql</new-connection-sql> --> <!-- sql to call on an existing pooled connection when it is obtained from pool - MySQLValidConnectionChecker is preferred for newer drivers <check-valid-connection-sql>some arbitrary sql</check-valid-connection-sql> --> - <!-- corresponding type-mapping in the standardjbosscmp-jdbc.xml (optional) --> <metadata> <type-mapping>mySQL</type-mapping> </metadata> </local-tx-datasource> </datasources>
|
如果需要配置多个数据源连接,即复制粘贴 <local-tx-datasource>
</local-tx-datasource>
部分代码,并修改连接的jndi-name,而不能再拷贝同样的模版文件到该目录下,会有冲突。
补充说明:
在Web端项目中没有建立实体Bean,却可以导入EJB端的实体Bean类,原因,在同一台机器上自动存在项目依赖,可以查看项目属性,可以看到,如果两个项目在不同机器,则在Web端需要建立这些实体Bean,不过可以不加Annotation