配置应用程序
应用程序也依赖于为服务器声明设置规范的配置文件。这个应用程序内的两个主要配置对象是 Hibernate 和 BlazeDS。
配置 Hibernate
您可以使用标准 JPA 配置文件 persistence.xml 配置 Hibernate,如 清单 5 所示。
清单 5. persistence.xml 配置文件的一个子集
<persistence version="1.0" 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">
<persistence-unit name="contacts" transaction-type="RESOURCE_LOCAL">
<properties>
<property name="hibernate.dialect"
value="org.hibernate.dialect.MySQLDialect" />
<property name="hibernate.default_schema" value="contacts" />
<property name="hibernate.connection.driver_class"
value="com.mysql.jdbc.Driver" />
<property name="hibernate.connection.url"
value="jdbc:mysql://localhost:3306/contacts" />
<property name="hibernate.archive.autodetection" value="class, hbm"/>
<property name="hibernate.connection.username" value="root"/>
<property name="hibernate.connection.password" value="root"/>
</properties>
</persistence-unit>
</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">
<persistence-unit name="contacts" transaction-type="RESOURCE_LOCAL">
<properties>
<property name="hibernate.dialect"
value="org.hibernate.dialect.MySQLDialect" />
<property name="hibernate.default_schema" value="contacts" />
<property name="hibernate.connection.driver_class"
value="com.mysql.jdbc.Driver" />
<property name="hibernate.connection.url"
value="jdbc:mysql://localhost:3306/contacts" />
<property name="hibernate.archive.autodetection" value="class, hbm"/>
<property name="hibernate.connection.username" value="root"/>
<property name="hibernate.connection.password" value="root"/>
</properties>
</persistence-unit>
</persistence>
persistence.xml 文件必须位于 Web 应用程序的 WEB-INF/classes/META-INF 文件夹中,Hibernate 才能读取到它。具备了这个条件之后,Hibernate 需要以下信息:
数据库方言(即它与哪个数据库对话,因为很多数据库都有略微不同的 SQL 方言)
经由默认架构的表空间
用于连接数据库的数据库驱动器
数据库 URL
自动检测功能应检测什么(例如,注释类、Hibernate 映射 XML 文件等)
用户名和密码
其他信息也有助于提高 Hibernate 的性能,但不是必需的。