仅Java EE Hibernate插入?我的postgresql数据库中的值

仅Java EE Hibernate插入?我的postgresql数据库中的值,hibernate,postgresql,jakarta-ee,Hibernate,Postgresql,Jakarta Ee,我目前正试图让hibernate使用EJB发送postgresql数据库中的JavaEE实体。我的实体代码(用于测试,我使用最简单的代码)是: 导入java.io.Serializable; @实体 公共类Coup实现可序列化{ 私有静态最终长serialVersionUID=1L; @列(unique=true,nullable=false) @身份证 私有字符串名称; @列(nullable=false) 私家串珠; 政变{ } 公共政变(字符串名称,字符串jeu){ this.name=

我目前正试图让hibernate使用EJB发送postgresql数据库中的JavaEE实体。我的实体代码(用于测试,我使用最简单的代码)是:


导入java.io.Serializable;
@实体
公共类Coup实现可序列化{
私有静态最终长serialVersionUID=1L;
@列(unique=true,nullable=false)
@身份证
私有字符串名称;
@列(nullable=false)
私家串珠;
政变{
}
公共政变(字符串名称,字符串jeu){
this.name=名称;
this.jeu=jeu;
}
公共字符串getName(){
返回此.name;
}
公共void集合名(字符串名){
this.name=名称;
}
公共字符串getJeu(){
把这个还给我;
}
公共无效setJeu(字符串jeu){
this.jeu=jeu;
}
}

我的hibernate.xml文件是

<?xml version="1.0" encoding="UTF-8"?> <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="PostgresDSjeeux" transaction-type="JTA"> <provider>org.hibernate.ejb.HibernatePersistence</provider> <jta-data-source>java:/PostgresDSjeeux</jta-data-source> <class>Equipe</class> <class>Joueur</class> <class>Salon</class> <class>Partie</class> <class>HautFait</class> <class>Coup</class> <properties> <!-- <property name="hibernate.connection.driver_class" value="org.postgresql.Driver"/> --> <property name="hibernate.hbm2ddl.auto" value="create-drop"/> <property name="hibernate.show_sql" value="true" /> <!-- <property name="transaction.factory_class" value="org.hibernate.transaction.JDBCTransactionFactory" /> --> </properties> </persistence-unit> </persistence>
org.hibernate.ejb.HibernatePersistence java:/postgresjsjeeux 装备 焦耳 沙龙 党 傲慢的 政变
但是,在我执行这个之后

Coup c = new Coup(); c.setJeu("superjeu"); c.setName("supername"); em.persist(c); 政变c=新政变(); c、 setJeu(“superjeu”); c、 集合名(“超级名”); em.c; 代码,我在JBOSS6日志中看到的生成的查询是:

14:57:59,364 INFO [STDOUT] Hibernate: insert into Coup (jeu, name) values (?, ?) 14:57:59364信息[STDOUT]休眠:插入到Coup(jeu,name)值(?,)
感谢您提供的任何答案。

我认为这只是PreparedStatement中显示绑定参数的日志消息


您是否查看了数据库以查看插入的内容?这是唯一重要的事,不是日志。

天哪,我真的觉得自己好笨。很抱歉问这个问题,数据从一开始就在数据库中,但我认为它不起作用。我刚刚安装了pgadmin3,我所有的数据都在那里。。。非常感谢:)如果您想查看日志文件中的实际值,必须使用log4jdbc之类的工具,但事实并非如此。您可以要求Hibernate使用设置为跟踪的
org.Hibernate.type
logger(在3.x上)或
org.Hibernate.type.descriptor.sql
logger(在4.x上)记录它绑定到这些PreparedStatement参数的值。如果您希望日志记录同时显示语句和参数(即,插入Coup(jeu,name)值(1,'abc')),那么是的,您将需要另一种方法,如log4jdbc或日志jdbc包装器。使用Hibernate日志的好处在于,您可以看到两种方式:绑定到PreparedStatements和从ResultSet提取 14:57:59,364 INFO [STDOUT] Hibernate: insert into Coup (jeu, name) values (?, ?)