西木-学习篇之黑马旅游网项目bug解决及知识摘要

一、黑马旅游网项目知识摘要

1.博客陈述篇之web项目吐槽

  • 终于到了自己做web项目的时候啦,都会遇到哪些问题呢

正如大家所说的,看似不难理解的项目代码,自己一步步去实现的时候仍然会有许多突发的问题,除了需要对项目整体结构和功能有系统化的理解,更多的是程序开发过程中对细心程度和知识系统储备(经验吧这就是。。)的要求。

2.博客技术篇之web项目问题阐述及处理

  1. 问题一: ajax异步请求所出现的无法从后台其他页面获取session对象的问题
  2. 问题二:angular-1.7.9.min.js文件未配置出现的页面加载问题

话不多说上解决方案!
Solution 1:
问题一中我们针对旅游网的login.html登录页面输入数据库中存在的用户名和密码,点击登录。
在这里插入图片描述但是发现个问题,本来我们希望将对应的用户名姓名显示在表头,即:欢迎,xxx;通过验证好的用户信息返回后存入session中进行响应。但是发现并没有成功,而是打开浏览器控制台发现如下错误。
在这里插入图片描述在这里插入图片描述这时候我们检查后台的service和Dao代码都没有错误,经过断点调试我们发现后台的查询操作和回显反值都没有问题,但是问题出在哪里了呢?这时候我们来看前台的ajax请求页面
在这里插入图片描述对data内容进行跟踪,发现回调函数中data数据为null;
后台根据用户名和密码请求的user信息却是正常的
这时我们可以锁定问题出现在对异步请求处理的servlet层
在这里插入图片描述
我们设计中通过info的flag属性给前台响应验证信息,但是忘记了这个时候我们仍需要将后台查询的user数据包装载到session域中,因为我们前台还需要使用它的信息,但是如果只验证不存储,那么我们无法在输入用户名和密码后得到我们后续的自动响应信息。

至此,问题就解决完了。

这里我想强调一个问题:
就是ajax异步传输的模式中我们更需要注意对session的理解,它是异步传输中的第三方媒介,由于html页面无法直接通过动态获取比如通过js的el表达式等直接对数据进行操作,这时session的临时媒介能力就派上大用场了,我们可以将后台响应的数据返回并保存在其中,需要的时候获取出来,并且再不需要的时候费除掉。或者在下一次服务器连接后就自动消失了,有点类似于缓存一样的效果。
在这里插入图片描述

Solution 2:
问题二中我们针对旅游网的header.html页面加载时发现web控制台报错angular-1.7.9.min.js:80错误。
这也是我们js包中没有引入造成的
在这里插入图片描述
很简单我们可以自己创建一个angular.js文件来弥补
在这里插入图片描述
头文件名自行命名,内容可以百度去官网查看源码copy过来就好啦。

至此,问题二解决。

我们在做项目时候的bug其实都是对技术经验的挑战,出的问题多了在前期是个好事情。希望我们都再接再厉为了更好的技术沉淀,更美好的生活出发。

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值