我有一个动作类,我使用simpledateformat进行日期格式转换,我的问题是java.text.ParseException,当我在针对类对象的成功更新后选择列表以在我的getjson响应中使用它时引发的除了日期Field)使用hibernate。 当我还使用hibernate更新我班级中的日期字段时,没有任何事情发生。
这是我使用的代码:
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 2012
答案 0 :(得分: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格式无关。