使用Bindy解析数据时出现日期模式问题

时间:2012-06-28 03:33:10

标签: java jpa apache-camel

我正在从CSV文件中读取日期值,值为'21 / 08/2009'。 Bindy在解析这些数据时给出了一个错误,如下所示:

org.apache.camel.dataformat.bindy.format.FormatException:提供的日期不符合定义的模式。

我写了以下代码。

package com.project1.projectdomain;

import java.lang.String;
import java.util.Date;


import javax.persistence.Entity;
import javax.persistence.Id;
import javax.persistence.Temporal;
import javax.persistence.TemporalType;

import org.apache.camel.dataformat.bindy.annotation.CsvRecord;
import org.apache.camel.dataformat.bindy.annotation.DataField;

import com.project.Identifiable;

@Entity
@CsvRecord(separator = ",")
public class Trade implements Identifiable<String> {
     Classname classobject;

    @Id
    @DataField(pos = 1)
    private String id;

    @DataField(pos=2)
    private String code;

    @Temporal(TemporalType.DATE)
    @DataField(pos=3)
    private Date date1;

    @Temporal(TemporalType.DATE)
@DataField(pos=4)
    private Date date2;

我使用maven来构建项目,jpa 3.0和apache camel。

1 个答案:

答案 0 :(得分:1)

您需要在pattern attribute上设置@DataField,并根据DateFormat指定您使用的日期模式:

@DataField(pos=4, pattern="dd/MM/yyyy")