POI的Unable to read entire block问题解决办法
在网上看到一些关于这个问题的解决办法,甚至修改POI源代码,但至今没有一个完美的解决方案.我在遇到这个问题时是因为对现有excel添加时报错,新建excel时不报错,所以我先忽略这个错我,把创建excel的其他问题解决后,这个问题也就顺带解决了,就是这样.所以我推测可能是创建excel表的其他问题引起了这个问题.只要解决了其他问题,这个问题就不存在了.
在POI中一定注意row的位置,合并单元格的位置,不能有错,不然错误会莫名奇妙.
用一个专门文件对Master表做常用的操作.
选用合适的设计模式对开发和维护很有帮助,至少代码量可以减少.一致性可以保证.
注意数据库的默认值设置和hibernate默认值设置(非空约束的区别)
如果初学者对J2EE设计模式感兴趣,可以用struts做一个增删改查的例子,将可以用到很多的好的设计模式,对照着学习,会加深对这些模式的理解.
java.lang.NoClassDefFoundError: org/hibernate/criterion/Criterion
没有加入hibernate3.jar包,尤其是在RCP开发时plugin.xml的Runtime选项卡中的
classpath列表框中添加
日期提取函数
MYSQL :Year(date),Month(date),DAYOFMONTH(date)
oracle:Extract(Year from date),Extract(MONTH from date),Extract(DAY from date);
在hibernate中添加默认值对应oracle中的默认值字段
oracle数据库变量,数据类型命名,尽量以大写字母命名,多个单词的中间用下划线隔开
不要用骆驼或微软的匈牙利命名法,oracle中变量,表等对象命名不能超过30个字符.
异常:把rcp项目作为eclipse启动,如果在console中没有出现异常报错,但程序运行却有错,可以去查看一下RCP程序自己的运行日志.里面应该有报错信息.非常有用.,在类似如下路径下D:\runtime-pafirc.product\.metadata\.log
org.eclipse.core.runtime.AssertionFailedException: null argument:Action must not have null id
解决办法:
在Action类中添加如下代码
public static final String ID = "pafirc.edu.cn.diagram";
在Action的构造函数中添加如下代码:
setId(ID);
org.hibernate.NonUniqueObjectException:a different object with the same identifier value was already associated with the session
同一个session关联了两个相同标识却是不同实体,可能是发生了主键或唯一性约束
org.hibernate.exception.SQLGrammarException: could not execute query
多数可能是SQL,HSQL等的语法错误或对oracle的权限不足.
或者在jdbcSQL语句中最后的逗号(;)MYSQL中可以保留,在oracle中必须去掉
否则出现语法错误
org.hibernate.exception.ConstraintViolationException: Could not execute JDBC batch update
违反数据库约束,如unique constraint
org.hibernate.MappingException: Unknown entity:
hbm文件和java中的class不存在,可能是拼写错误.或者是文件路径不对,找不到文件.
ORA-00920: invalid relational operator
可能是SQL语句写错了,检查里面运算符是不是有错,如:多加了括号,有未知的字段
ORA-00904: invalid column name无效列名
ORA-00942: table or view does not exist表或者视图不存在,或权限不够
ORA-01400: cannot insert NULL into ()不能插入空值
ORA-01403: NO_DATA_FOUND没有数据
ORA-00051: TIMEOUT_ON_RESOURCE资源等待超时
ORA-01422: TOO_MANY_ROWS返回多于一行
ORA-01476: ZERO_DIVIDE除0错误
ORA-00936:缺少表达式,或用了oracle保留字
ORA-00933:SQL命令未正确结束
注意oracle子查询表达式和mysql中的不同