关于解决问题的的思路和对问题的定位

已经进入到项目组两个星期了,也解决了一些小的问题,完善了一些小的功能,但是自己的收获却不多,很大原因上是因为自己不愿意去追寻问题的根本,只是将问题在表面得到解决,实质上可能会引进新的问题和报错。就自己在项目中遇到的问题做一点简单的反省和总结。

在花炮项目中,我来解决了广告管理的一些问题,开始在完成删除广告的功能的时候,每次删除都会改变这条信息在数据库中的状态,但是页面上还是会显示出来,开始的时候我想能在jsp的页面做一些对显示信息的筛选,但是后来被师兄告知写在controller里面会比较合适,

 于是乎我在首页广告显示的controller里面加上了对状态的筛选语句,再后来发现在表单中我删除一条信息之后,所有的信息都会被显示到列表中(不管是删除的还是没有删除的),于是我查看了list.jsp中删除按钮调用的方法,我认识是删除后的自动刷新出现了问题,后来看到controller里面的delete方法调用完之后,又返回了list.jsp,又看到jsp文件的最前面

 调用的是controller的search方法,我以为这是前面工作人员的一个失误,想着应该再跳回/homepage/list方法,于是将/search改成了/homepage/list,于是删除后的问题解决了。正当我以为结束的时候,我发现在别的广告页面,操作上下架的时候,都会刷新出首页的广告,于是我在广告上下架的操作后面将reload()刷新换成了reOpen()(可以只刷新当前页面),这时我已经被自己的机智所折服。于是将代码提交上去了。但是还是有一个问题遗留在我心里,因为是分成了三种不同的广告,但是只有一个list.jsp,那样程序到底是怎么样每次都能显示正确的广告内容的,于是第二天问了组长这个问题,

 

 是因为在点击菜单的时候,连接直接使用了controller里面对应的list方法,这是写在菜单里面的。

 

 也是因为jsp中有一个隐藏域在控制着conroller里面传过来的类型,才能做到在一个jsp里面分别显示三种不同的广告内容。但是这个时候组长发现一个新的问题,就是不管在哪个页面搜索,都只能搜索到首页广告的信息。后来才明白是因为

 我为了解决delete的错误的时候的更改,导致了后面每次controller里的search方法最后都跳到homepage/list页面,所以每次只能搜索到首页广告的信息,实际上delete方法在返回jsp的时候,也是调用了search方法,之所以连删除的也显示,是因为

 在controller里面的search方法,没有对删除状态进行筛选。

 添加了状态的选择之后,问题才最后解决。

其实经过这件事情之后,我感觉到自己其实一开始就没有对问题定位准确,也只是想到了眼前的问题,并没有去思考,我现在这个解决问题之后会不会产生别的影响,其实自己当时又想到了一些问题,比如说三种不同的广告是怎么分开显示的,以及为什么原来jsp文件写的是调用search方法,但是我觉得这可能这可能是一个别人犯的错误,觉得这个都是在框架里面被定义的或者在配置文件里配置好的,我也不清楚,所以我这种知其然,不知其所以然的态度,导致了一系列问题的产生。仅此记文,三省吾身。

猜你喜欢

转载自peter-hang.iteye.com/blog/2405364