今天兄弟公司提出需求希望在我们网站里订制几个网页,嵌入他们的网站,因为网页是动态生成的,首先要获取数据库数据,因为我们使用的是struts,这样我就纠结了,纠结嵌入网页之后,利用struts查询数据,后还需要跳转回原页面,但是当再一次加载原页面时,依然会执行跳转获取数据功能,这样,就形成了无限的循环。。。。。。
陷入无限的循环里,走入死胡同,在这里徘徊了很久,想过先加载一个别的页面,获取数据后再跳转到最终网页,但是感觉这样很麻烦,且浪费资源,最后某位大神的一句话让我茅塞顿开,”你不会先访问action啊",对啊,别的网站直接嵌入action请求,跳转并获取数据之后,进入目标页面,这样不就OK了!哎,这是学习了。
后台和前台进行数据交换,这块我一直都不是很清楚,在写这篇博客的时候依然很模糊,以前一直以为前台需要什么,后台必须手动的传输什么,不管是request,session还是别的,但是,学习后的结果,却与我的想法大相径庭,在每次网页跳转的时候,总会存在一个堆栈,记录后台action的各个参数,方法,因此我感觉我们可以直接使用这个堆栈来获取我们所需的东西,前台使用这些后台传来的数据时,建议使用标签,各种标签,是我们的工作量大大减小,不仅如此,还不容易出现错误,动态生成网页变得更加简单。
做表单传输时,就在想,为什么为什么不用form表单中的submit组件,进行传输,却要在方法里使用submit()方法,还是大神的一句话“你发送前要检查数据啊,不能什么都发吧!”对啊,这样就可以在将数据传送到后台之前可以进行检查,真是皆大欢喜。
今天才发现,在使用struts时,表单form竟然可以在一定程度上影响跳转结果,比如:原先form表单发送信息后,最后跳转的页面会覆盖原form所在页面,但是当在form中加入target="_blank"时,跳转后的新页面,将在新的网页中显示,真是神奇啊!
这是今天工作的心得,希望在以后的工作中,这段话会让我不用再走以前走过的走错了的路。