2017-06-17 15 views
0

オブジェクトをpostgres dbに永続化するために、xmlファイルの代わりに注釈クラスを使用しています。以下は、使用されるテンプレートクラスです。Hibernate:挿入クエリに値が含まれていません

import java.sql.Date; 
import javax.persistence.Column; 
import javax.persistence.Entity; 
import javax.persistence.Id; 
import javax.persistence.Table; 
import javax.persistence.UniqueConstraint; 

@Entity 
@Table(name = "ABCD", catalog = "XYZ", uniqueConstraints = { 
     @UniqueConstraint(columnNames = "FILE_REF_NO") }) 
public class MCT112_InputFAT implements java.io.Serializable { 

    @Id 
    @Column(name = "FILE_REF_NO", unique = true, nullable = false) 
    private String fileRefNo; 

    @Column(name = "FILE_NAME") 
    private String fileName; 

    @Column(name = "FILE_DATE") 
    private Date fileDate; 

    @Column(name = "FILE_PROCESSED_DATE") 
    private Date processedDate; 

    @Column(name = "PROCESSED_STATUS") 
    private Boolean processedStatus; 

    @Column(name = "FILLER1") 
    private Date filler1; 

    @Column(name = "FILLER2") 
    private String filler2; 

    @Column(name = "FILLER3") 
    private String filler3; 

    @Column(name = "FILLER4") 
    private Integer filler4; 

    @Column(name = "FILLER5") 
    private Integer filler5; 

    public MCT112_InputFAT() { 

    } 

    public MCT112_InputFAT(String fileRefNo, String fileName, Date fileDate, Date processedDate, 
      Boolean processedStatus, Date filler1, String filler2, String filler3, Integer filler4, Integer filler5) { 
     super(); 
     this.fileRefNo = fileRefNo; 
     this.fileName = fileName; 
     this.fileDate = fileDate; 
     this.processedDate = processedDate; 
     this.processedStatus = processedStatus; 
     this.filler1 = filler1; 
     this.filler2 = filler2; 
     this.filler3 = filler3; 
     this.filler4 = filler4; 
     this.filler5 = filler5; 
    } 

    public String getFileRefNo() { 
     return fileRefNo; 
    } 

    public void setFileRefNo(String fileRefNo) { 
     this.fileRefNo = fileRefNo; 
    } 

    public String getFileName() { 
     return fileName; 
    } 

    public void setFileName(String fileName) { 
     this.fileName = fileName; 
    } 

    public Date getFileDate() { 
     return fileDate; 
    } 

    public void setFileDate(Date fileDate) { 
     this.fileDate = fileDate; 
    } 

    public Date getProcessedDate() { 
     return processedDate; 
    } 

    public void setProcessedDate(Date processedDate) { 
     this.processedDate = processedDate; 
    } 

    public Boolean getProcessedStatus() { 
     return processedStatus; 
    } 

    public void setProcessedStatus(Boolean processedStatus) { 
     this.processedStatus = processedStatus; 
    } 

    public Date getFiller1() { 
     return filler1; 
    } 

    public void setFiller1(Date filler1) { 
     this.filler1 = filler1; 
    } 

    public String getFiller2() { 
     return filler2; 
    } 

    public void setFiller2(String filler2) { 
     this.filler2 = filler2; 
    } 

    public String getFiller3() { 
     return filler3; 
    } 

    public void setFiller3(String filler3) { 
     this.filler3 = filler3; 
    } 

    public Integer getFiller4() { 
     return filler4; 
    } 

    public void setFiller4(Integer filler4) { 
     this.filler4 = filler4; 
    } 

    public Integer getFiller5() { 
     return filler5; 
    } 

    public void setFiller5(Integer filler5) { 
     this.filler5 = filler5; 
    } 

}` 

実行中に、値は次のようにSQL文字列に空として埋め込まれます。

insert into XYZ.ABCD(FILE_NAME, FILE_DATE, FILE_PROCESSED_DATE, PROCESSED_STATUS, FILLER1, FILLER2, FILLER3, FILLER4, FILLER5, FILE_REF_NO) values (?, ?, ?, ?, ?, ?, ?, ?, ?, ?) 

ここで問題が何であるかは誰にも分かりません。

答えて

1

デフォルトでは、Hibernateはリクエストパラメータを表示しない(show_sqlプロパティを有効にした)基本的なロギング機能を使用します。

あなたがリクエストパラメータが必要な場合は、log4jライブラリを使用してTRACEレベルにロガーlog4j.logger.org.hibernate.typeを置く必要があります。

は(log4jの1.2)log4j.propertiesの例下記参照:

# Send log messages to stdout 
log4j.appender.stdout=org.apache.log4j.ConsoleAppender 
log4j.appender.stdout.Target=System.out 
log4j.appender.stdout.layout=org.apache.log4j.PatternLayout 
log4j.appender.stdout.layout.ConversionPattern=%d{ABSOLUTE} %5p %c{1}:%L - %m%n 

# Root logger option 
log4j.rootLogger=INFO, stdout 

# Display only startup messages 
log4j.logger.org.hibernate=INFO 
# same as show_sql=true 
log4j.logger.org.hibernate.SQL=DEBUG 

# display bind parameter 
log4j.logger.org.hibernate.type=TRACE 
関連する問題