项目的近期任务不忙,闲着,于是把之前的代码给整理下,前端学习到java5中有静态导入功能,于是想把项目中所有的静态方法和常量给整理一遍。在eclispe下做这样的工作还是很方便的,全局替换即可。在看看代码,perfect a lot !习惯行的动作>commit>continuum >autodeploy,一路绿灯.也就没管了。
不幸的是客户访问时,一片空白,系统不能工作了,查了svn记录中才找出来,我把 一个int 常量 移动 constants中了。然后 在header.jsp 中 通过<appfuse:constants scope="request"/> 引用,然而 appfuse不支持 原始类型,必须是对象类型,无法,只好改用Integer类型,java5中有装箱拆箱功能,原来代码也不要修改,便通过了。问题解决。
问题总结:
1,虽然java5有自动装箱,拆箱功能,但还要注意使用场合!
2,越不认为有错的地方,出错后很难找到,找到后也会让你笑一会,在哭一会!
3,自动检测工具是机器做的,不是万能的,能减少人工,不能代替人工检测,
问题总结:
1,虽然java5有自动装箱,拆箱功能,但还要注意使用场合!
2,越不认为有错的地方,出错后很难找到,找到后也会让你笑一会,在哭一会!
3,自动检测工具是机器做的,不是万能的,能减少人工,不能代替人工检测,

本文分享了一次因将int类型常量改为Integer类型而导致的线上故障排查经历。作者在更新代码过程中未注意到类型变化的影响,最终导致客户端显示空白页面。文中详细介绍了问题定位及解决过程,并总结了几点宝贵的教训。
402

被折叠的 条评论
为什么被折叠?



