java - hibernate 不再工作......为什么?

标签 java hibernate netbeans

我正在使用 hibernate 做一些简单的事情,因为我必须为一个项目学习它。我创建了这个简单的示例:

package hibtests;

import hibtests.beans.newBean;
import org.hibernate.Session;

/**
 *
 * @author dario
 */
public class Main {


    public void test(){
        Session session = NewHibernateUtil.getSessionFactory().getCurrentSession();

        session.beginTransaction();

        newBean nb = new newBean();
        nb.setNome("FooFoo");
        session.save(nb);

        session.getTransaction().commit();

    }
    /**
     * @param args the command line arguments
     */
    public static void main(String[] args) {
        // TODO code application logic here

        Main main = new Main();
        main.test();
    }

}

...它工作正常,将行放入数据库中。然后我又上了另一门课几个小时。我再次尝试这个例子,Hibernate 发出了这个奇怪的查询:

Hibernate: 
    insert 
    into
        TEST
        (ID, NOME) 
    values
        (default, ?)
Hibernate: 

values
    identity_val_local()

就像它无法读取 FooFoo 属性一样。我检查了是否更改了源...但事实并非如此。一切都和以前一样,没有任何异常(exception)。 newBean 实例不为 null,并且 FooFoo 位于 Nome 字段中。为什么会这样?

哦,我忘了,我正在使用 Netbeans 6.8 和 JavaDB。

根据要求,我的映射如下:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
<hibernate-mapping>
    <class name="hibtests.beans.newBean" table="APP.TEST">
        <id name="id" column="ID">
           <generator class="identity"/>
        </id>
        <property name="nome" column="NOME" type="string"/>
    </class>
</hibernate-mapping>
<小时/>

最后一刻更新:事实证明插入有效。无论如何,我仍然可以看到带有 ? 的查询。而不是字符串。为什么?

<小时/>

根据要求newbean源代码如下:

公共(public)类newBean {

Long id;

public Long getId() {
    return id;
}

public void setId(Long id) {
    this.id = id;
}

public String getNome() {
    return nome;
}

public void setNome(String nome) {
    this.nome = nome;
}
String nome;

}

最佳答案

您永远不会看到插入到数据库中的字符串的值,您将始终将它们视为问号(?),有嗅探器会显示其内容,但在标准 hibernate 中您将看不到任何值。

关于java - hibernate 不再工作......为什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2095096/

相关文章:

java - Java 中的无效转义序列

mysql - hibernate多个更新查询单个事务

java - Spring 3.2 Hibernate 没有 Activity 事务

java - NetBeans IDE/jMonkey SDK 中没有 Maven 选项卡

java - 如何正确使用 GridLayout 在 JFrame 中定位元素?

java - @autowiring 没有被注入(inject)

hibernate - 这个HQL查询有什么问题?

java - Netbeans build-impl.xml 搞砸了

java - 来自 db 乐观字段的 Netbeans 实体类

java - Cordova 不适用于 Java 9。如何仅为 Cordova 设置特定的 jdk?