0

我有一个动作类,我在其中使用 simpledateformat 进行日期格式转换,我的问题是 java.text.ParseException,当我在对类对象成功更新后选择要在我的 getjson 响应中使用它的列表时引发 java.text.ParseException(日期字段除外) 使用休眠。当我还使用休眠更新班级中的日期字段时,什么也没有发生。

这是我使用的代码:

Date d;
  String newformat = "dd/MM/yyyy";
  String oldformat= "yyyy-MM-dd";
  SimpleDateFormat sdf;
this.mapjourferiejson=new LinkedHashMap<Integer,List<String>>();
  List<String> infostring=new  ArrayList<String>();
//function doing the hql request
  List<JourFerie> listjourferiejson=jourferieservice.findAll();
try
  {
  for(JourFerie jourferie:listjourferiejson)
  {
     sdf= new SimpleDateFormat(oldformat);
     System.out.println("la date est : "+jourferie.getDate());
     d = sdf.parse(jourferie.getDate().toString());
     sdf.applyPattern(newformat);
     infostring.add(sdf.format(d));
     infostring.add(jourferie.getNombrejours().toString());
     infostring.add(jourferie.getOccasion()); 
     this.mapjourferiejson.put(jourferie.getJourferieId(), infostring);
     //je vide le set pour un autre reutilisation
     infostring=new  ArrayList<String>();
  }  
  }catch(ParseException e)
  {
    e.printStackTrace();
    System.out.println("erreur dans le parsing");

  }

这是我所有解析日期的日志:日期:2012-01-01 日期:2012-01-01 日期:2012-01-02 日期:2012-01-02 日期:2012-01-03日期:2012 年 1 月 11 日星期三 00:00:00 WAT

4

1 回答 1

0

我开始回答以提出一些观点(尝试自己做一些)。

d = sdf.parse(jourferie.getDate().toString());
// is doing type conversion like Date => String => Date
// why ? why not d = jourferie.getDate(); ?

但 getDate() 是一种 Java 方法,字符串格式使用 Java VM 语言环境。此格式与 SQL 中的 MySQL 格式无关。

于 2012-09-22T22:22:47.257 回答