web中常见的bug调试总结

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/HeadingAlong/article/details/53647382

前言

​ 在web应用中,我们可能会遇到各种各样的bug,导致结果达不到我们的预期,我在项目开发的过程中,对bug从来都不怕,因为我知道这些bug或许就是自己成长的不可或缺的一部分.今天我会总结一部分的bug现象和解决方法,希望初学者能看到,并且也少走弯路.好了,废话无需多说,步入正题为先.

1.NoClassDefFoundError

​ a. xml文件配置时servlet的全类名写错,包与包之间用点隔开(eg:demo2.servlet.loginServlet),类名不能写后缀(eg:.java)

java.lang.NoClassDefFoundError: IllegalName: demo2/servlet.loginServlet

​ b. 应用中的所有类导包必须是正确的,如果出现classNotFound的现象,说明有哪个包导错了,这个情况出现可能几率较大.

​ c.web应用发布后src下的源文件会以字节文件的形式出现在web-root—>WEB-info—>classses目录下,出现该bug可能的原因是:该目录下没有出现某些class文件,这时我们打开项目,看看webapplibrarie文件夹下的jar包是否有导入异常,将所有的已经buildpath后的jar包右键config buildpath 移除全部,再重新去lib文件下将jar包添加path(jar包有问题导致web文件无法发布)

2.无法访问到web应用下的jsp文件

​ a. 再次确认自己的url没有写错的话,那检查下xml文件,是否有哪个过滤器的url_pattern写错(jsp文件也是servlet,同样被过滤器过滤掉了,导致请求一致阻塞),试着把filter配置注释掉,再发布应用尝试连接.

3.nullPointException:空指针异常

​ a. 由于程序的多级调用,出现空指针的情况非常多,在这里我建议在开发中,写越底层的程序,越要对各种变量进行空指针的判断,这样可以减少空指针现象的出现.当然这种bug很容易解决,你就一层层点进去就知道那块出现问题,在这里我只强调写代码思路一定要严谨,多进行非空判断是好习惯.

4.html文件过大

​ 有时候增加网站访问延迟的不只是网速,数据库结构,有可能是因为某个文件意外的过大,造成带宽不足,在检查文件时,尽量显示文件的饿详细信息,这样我们会更容易排除文件多大这种问题,因为html文件的大小我们基本上心里都有数.(我遇见的html文件高达30M,打开看原来空格非常多,替换掉之后文件就变成几k了)

5.jsp中的语法错误

​ 在写jsp时,由于工具不会给太多的语法提示,等到写完后发布使用才知道,数据传输不成功只是页面的语法问题造成的,我建议使用浏览器的F12开发者工具调试,我常用的chrome和firefox比较多,这两个工具很强大,能大大提高我们的调试效率,希望初学者能好好利用之.

猜你喜欢

转载自blog.csdn.net/HeadingAlong/article/details/53647382