1、 新装了myEclipse之后再使用自动导出映射文件时遇到了一个问题:
MyEclipse DB Brower建立oracle数据库连接的时候,报出下面的错误.
java.sql.SQLException: ORA-00604: error occurred at recursive SQL level 1
java.sql.SQLException: ORA-12705: invalid or unknown NLS parameter value specified
修改eclipse/eclipse.ini中的-Duser.language=*保持与windows XP控制面板中"区域和语言选项"中选定的语言区域一至;
如:将"-Duser.language=en"修改为"-Duser.language=zh"
或 修改注册表中NLS_LANG的键值与ORACLE数据库中的表PROPS$中的NLS_LANGUAGE的值一致
2、 在dao中设置了断点, 调试时方法已确定被调用, 然而设置的断点无效。 重启tomcat在debug模式下调试断点生效。
3、——————————关于Hibernate的saveOrUpdate()方法——————
public boolean savdDonateInfo(Donateinfo info, long id) {
boolean flag = false;
try{
String hql = "select d from Donated d where id=?";
List list = this.getHibernateTemplate().find(hql, id);
//System.out.println("测试: "+list.size());
Donated donated = (Donated) list.get(0);
info.setDonated(donated);
this.getHibernateTemplate().save(info);
flag = true;
}catch(Exception ex){
ex.printStackTrace();
}
return flag;
}
如果我使用
this.getHibernateTemplate().saveOrUpdate(info); 则相应的数据不会保存进数据库,使用sava成功保存
这似乎是hibernate三个状态的问题, 得重新复习一下这几个状态的特点了。
4、 异常Caused by: org.hibernate.HibernateException: JDBC Driver class not found:
oracle.jdbc.driver.OracleDriver。 然而我确认我已经将class12.jar导入了工程中.... ....
没辙了, 最后将class12.jar放到tomcat目录下的lib中异常消失。
5、 以往在struts.xml中加上 <controller>
<set-property property="processorClass"
value="org.springframework.web.struts.DelegatingRequestProcessor"/>
</controller>时配置文件老是报错。
后来将其添加在 <message-resources />元素前就没报错了。
最近已经碰到过几次这样的问题, 由于xml文件做了相应的约束, 所以有些元素的存在着先后关系
6、 关于ssh集成的另一种配置方式 (以前我的配置都是放在struts-config.xml中的):
<listener>
<listener-class>
org.springframework.web.context.ContextLoaderListener
</listener-class>
</listener>
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>/WEB-INF/classes/applicationContext.xml</param-value></context-param>
——————在struts-config.xml中配置:
<controller>
<set-property property="processorClass"
value="org.springframework.web.struts.DelegatingRequestProcessor"/>
</controller>
引发我寻找新的配置方法的原因:
运行异常: servlet action is not avaliable异常——————解决之道
在web.xml中做如下配置即可解决:
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>/WEB-INF/classes/applicationContext.xml</param-value>
</context-param>
7、 关于如何求hibernate分页的总记录数?
如果数据库支持可滚动结果集的话可以用 (数据量小的话)
- ScrollableResults scrollableResults = query
- .scroll(ScrollMode.SCROLL_SENSITIVE);
- // ScrollableResults scrollableResults = query.scroll();
- // get the total elements number
- scrollableResults.last();
- this.totalElements = scrollableResults.getRowNumber() + 1;
或者 query.list().size();
如果数据量大的话则还是使用count(*)