<st1:chsdate w:st="on" isrocdate="False" year="2007" day="27" islunardate="False" month="7">07年7月27日</st1:chsdate> 星期五 晴
经过10余天的探索学习,在今天终于成功完成了 Struts+Hibernate 框架的整合.
在学习的过程中,不断的发现问题,在不断的解决问题.有几次都想放弃了,这的确锻炼了我的毅力。
在开发过程中,也发现了一些容易犯的错误. 例如: Hibernate framework 中的 hibernate.hbm.xml 的存放位置 ,一般是在src/ 下. 并且需要配置 log4j.properties, 同样的 它也是放在/src 下面; 若没有它则没有日志输出了,在运行程序时,不会显示信息了!
由于我使用Eclipes的时间不长, 困扰我的最大的问题就是hibernate.hbm.xml 和 xx.hbm.xml 文件中的 的内容,由于贪图方便,直接就Ctrl+c,Ctrl+V 了,结果hibernate.hbm.xml 和 xx.hbm.xml 文件中的 的内容都写成hibernate-configuration DTD 3.0,后来出问题才发现hibernate.hbm.xml文件 是 hibernate-configuration DTD 3.0, Xx .hbm.xml 文件是 hibernate-mapping DTD 3.0 。
<st1:chsdate w:st="on" isrocdate="False" year="2007" day="28" islunardate="False" month="7">07年7月28日</st1:chsdate> 星期六 晴
有一个困扰我的问题,我在hibernate中通过O/R M 数据库bbs中的一个表user ,可是总是出现问题.. 具体就是SQLException ,并且描述是jdbc…中出现异常, 我检查了各个 .hbm.xml文件也未发现不同,后来断开数据库在进行测试发现不能连接,才发现是数据库问题,但又没有具体的目标, 当问题没有眉目的时候,不妨先踏出一脚试试,我尝试着把 表user的名字改为t_User 奇迹出现了,成功了. 为什么成功,我还是搞不明白,难道user是关键字??好在解决了! 高兴! 但确实找了好多资料也找不出一个具体的原因。
晚上又进行了HQL语句的学习,发现了一个问题:
HQL语句: <o:p></o:p>
String qs = "from User as user where user.username='"+name+"'";<o:p></o:p>
正确 .<o:p></o:p>
String qs = "from User where User.username='"+name+"'";<o:p></o:p>
错误. <o:p></o:p>
奇怪吧 ,没有as user 就错误了, 即没有设计对应的 别名 就错了.
就从资料上来说,好象并没有规定必须要定义一个别名,但当有数据操作时就必须要写;也可能时我没有找到这方面的规定。注意就好了!