项目写好之后,调试的时候总会出现各种各样的问题,数据库方面就摆弄了一天的时间,但是这一天的收获还是很大的,主要出现了以下几个错误:
1,java.lang.ClassNotFoundException
2,java.sql.SQLException: Io 异常: The Network Adapter could not establish the connection
详细分解:
1,字面意思应该是没有找到需要调用的相应类(自己理解的,没有google翻译,不知对不对),解决方法时导入java连接oracle的jar文件——classes12.jar。
这个包已经放在了jdk的lib目录下(也可以在CLASSPATH中进行配置),但是用Myeclipse进行调试的时候依然不行,必须导入(为什么?)。步骤如下:在项目上右键Build Path——Configure Build Path——Add External JARs——找到你的classes12.jar并选中。PS:这个jar文件可以在任何地方,只要导入就行了。
2,这个是连接地址不正确,IO异常,我检查了N+N遍,没有找到问题,最后将连接类单独测试,还是不行,把别的地方测试通过的代码一段一段复制过来进行调试,终于找到错误的代码块,逐步缩小范围,最后鹿的结果大跌眼镜:端口号是1521,不是1251。妈呀,瞎了我的钛合金眼。
PS:java.lang.noclassDefFoundError
这个错误是测试文件打包了,但是利用cmd编译的时候没有进行打包编译,所以运行不通过。可原理是什么呢?
总结:
检查代码,逻辑思维要对。
找以前的小demo,进行环境变量配置的测试。如果成功,进行下一步。
代码调试的时候录可以进行局部调试,每一个class文件分离开来。如果不能分离,进行下一步。
将代码简化,只保留主要功能,只保留一个方法,进行连贯测试,逐步增加内容再进行测试你。
还不行,那google和同事也许能帮忙。