相关疑难解决方法(0)

如何配置hbm2java和hbm2dao以将packagename添加到生成的类中

我正在尝试hbm2java使用maven 配置生成POJO类和DAO对象.我正在处理的一个问题是没有生成包名.我正在使用以下pom:

<execution>
    <id>hbm2java</id>
    <phase>generate-sources</phase>
    <goals>
        <goal>hbm2java</goal>
    </goals>
    <inherited>false</inherited>
    <configuration>
        <components>
            <component>
                <name>hbm2java</name>
                <implementation>configuration</implementation>
            </component>
        </components>
        <componentProperties>
            <packagename>package.name</packagename>
            <configurationfile>target/hibernate3/generated-mappings/hibernate.cfg.xml</configurationfile>
        </componentProperties>
    </configuration>
</execution>
Run Code Online (Sandbox Code Playgroud)

然而,生成的代码从以下开始:

// default package
// Generated 2010-05-17 13:11:51 by Hibernate Tools 3.2.2.GA

/**
 * Messages generated by hbm2java
 */
public class Messages  implements java.io.Serializable {
Run Code Online (Sandbox Code Playgroud)

有没有办法强制maven生成packagename中定义的部分?

更新:

这是我的hibernate.cfg.xml,也是由hibernate-tools(hbm2cfgxml)自动生成的:

<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE hibernate-configuration PUBLIC
"-//Hibernate/Hibernate Configuration DTD 3.0//EN"
"http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">
<hibernate-configuration>
    <session-factory>
        <property name="hibernate.c3p0.max_size">20</property>
        <property name="hibernate.c3p0.max_statements">50</property>
        <property name="hibernate.c3p0.min_size">5</property>
        <property name="hibernate.c3p0.timeout">1800</property>
        <property name="hibernate.connection.driver_class">org.postgresql.Driver</property>
        <property …
Run Code Online (Sandbox Code Playgroud)

maven-2 hibernate hibernate-tools hbm2java

5
推荐指数
1
解决办法
2万
查看次数

标签 统计

hbm2java ×1

hibernate ×1

hibernate-tools ×1

maven-2 ×1