struts+hibernate 的一些问题
在学校只学了JSP
struts+hibernate+sql2000都是自学的。学了差不多三个月
9月自己的做了一个项目用的是
struts+hibernate+sql2000开发一个小的人事系统工程
用来处理加班加点请假的一些基本问题
开发过程中遇到了不少的问题,大多问题都在google得以解决,还是有一些问题搞了我好久。
大多是hibernate的问题
生成错误的*.hbm.xml
做映射时总是错误
原因 表没有设置主键 我用的是自增类 所以要选 native
找不到action
所有的action都不生效了 查看struts.conf.xml都没有问题。最后发现是hibenaet.cfg.xml的问题.
无法插入日期类型的数据
原因 sql2000 datetime类型 yyyy:mm:dd hh:mm:ss 不支持 yy:mm:dd hh:mm:ss
而import java.text.DateFormat; 的parse方法以上二种类型都支持的,所以无法近捕捉这个 Exception 所以一直找不到问题的所在!
DateFormat d =DateFormat.getDateTimeInstance();
try{
d.parse(leave_start);
d.parse(leave_end);
}catch(Exception ex){
System.out.println(ex.getMessage());
errors.add("leave.time.err",new ActionMessage("leave.time.err"));
}
这里可以通过 可是到了ACTION时 yy:mm:dd hh:mm:ss 这个类型的Date()对像 在SQL2000 的
Datetime是不支持的。
无法反复更新一个记录
更新完一个对像 要用 session.clear()清空session不然无法进行第二次更新!
Transaction tt=session.beginTransaction();
session.update(leaveinfo);
tt.commit();
session.flush();
session.clear();//清空session才可以反复更新提交!
相对路径和绝对路径
在struts里建议在struts-conf.xml里设置全局转发 不要用相对路径。
用相对路径 在用action.do 和用相对路径都转向一个页面里 会产生相对路径错误问题(相对的上层目录不能确定)。
以上只是个人的一些看法,我也不是很明白。只是希望都刚入门的朋友有所帮助。