昨天在使用Hibernate操作数据库是出现了两个异常,弄了很久才把问题解决,现在想把解决过程记录下来,希望能给遇到跟我一样问题的朋友一些帮助,O(∩_∩)O~。
1.ORA-01843: not a valid month 异常解决办法。
由于我装的操作系统是英文版的,默认的日期格式为dd/mm/yyyy,而oracle中的日期格式为:DD-MON-RR,可能是由于这个原因导致的错误吧。我本来想在网上找一些方法修改oracle的日期格式,有人说修改注册表,具体操作如下:
注册表HKEY_LOCAL_MACHINE->SOFTWARE->ORACLE->HOME0中,如无默认的日期格式,则“新建”->“字符串”,重命名为“NLS_DATE_FORMAT”,可是我进入注册表后发现里面根本没HOME0目录,我新建一个HOME0目录发现没效果,
结果经过同学的提醒我才发现只要修改一下系统的日期格式就可以了,进入控制面板中的“区域和语言”选项,我原来选择的格式为Chinese(Singapore)
把它换成Chinese(PRC)就可以了。
2.Hibernate数据类型格式转换异常解决办法
我在POJO中定义的日期为字符串类型,在使用Hibernate插入数据时提示错误,后面才发现可能是由于Hibernate不能直接把字符串转换成日期类型,后面把它换成Date类型后就可以插入数据了。
以上是一个初学者的经历,如什么地方说的不对,请大家指正,谢谢!!