我刚刚在jboss上配置了一个新的数据源

时间:2010-11-09 17:06:12

标签: jboss

并创建了一个新用户,我已根据需要授予它对特定表的选择/更新删除权限。

这是否足以使用持久性,或者jboss是否也需要管理员权限?

2 个答案:

答案 0 :(得分:1)

不,它不应该需要管理员权限。

最简单的答案 - 试一试,看看。

答案 1 :(得分:1)

不,无需分配管理员权限。使用persistence.xml

就足够了

请在persistence.xml中添加以下内容

<persistence-unit name="abc" transaction-type="JTA"> and 
<jta-data-source>java:jboss/datasources/data_source_name</jta-data-source>

persistence.xml应该是这样的:

<?xml version="1.0" encoding="UTF-8"?>
<persistence version="2.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_2_0.xsd">
    <persistence-unit name="abc" transaction-type="JTA">
    <jta-data-source>java:jboss/datasources/data_source_name</jta-data-source>
    <provider>org.hibernate.ejb.HibernatePersistence</provider>
        <!-- Map entity classes --> 
           <class> com.packege.classname </class>
        <properties>
    <!-- Properties for Hibernate -->
        <property name="hibernate.connection.driver_class" value="com.mysql.jdbc.Driver" /> 
        <property name="hibernate.dialect" value="org.hibernate.dialect.MySQLDialect" /> 
        <property name="hibernate.connection.url"       value="jdbc:mysql://localhost:3306/DB_NAME" /> 
        <property name="hibernate.connection.username" value="root" /> 
        <property name="hibernate.connection.password" value="root" /> 
        <property name="hibernate.dialect" value="org.hibernate.dialect.MySQLDialect" />
        <property name="hibernate.hbm2ddl.auto" value="update" />
        <property name="hibernate.show_sql" value="true" />
    </properties>
    </persistence-unit>
</persistence>

并在Hibernate util类中为createEntityManagerFactory方法提供持久性单元名称。

Persistence.createEntityManagerFactory("abc");