0

Inorder to persist object to postgres db, I am using an-noted class instead of xml file. Below is the template class used.

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;
    }

}`

But while running the values are populated as empty in the sql string as below.

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

Does anybody know what is problem here.

1 Answer 1

1

By default Hibernate use a basic logging feature (with show_sql property enabled) which does not display request parameters.

If you need request parameter you must use log4j library and put logger log4j.logger.org.hibernate.type to TRACE level.

See below an example of log4j.properties (for log4j 1.2):

# 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
Sign up to request clarification or add additional context in comments.

Comments

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.