练习session部分 仿照书上95面例题5-9




将default中的关键词同步更改为1234之后,对获取信息没有影响
接下来练习cookie管理
仿照书上92面例题5-8并按照作业要求进行一定修改得到初步结果

index源代码

index处理结果

show源代码
登录跳转后的页面
需要注意的是不可以完全按照书上的代码粘贴 有一些细小的错误比如没有</li> 行间距没有加px 因为没有px行间距太大还以为是代码问题只能显示第一排又耽误半天 一定要多检查 凭借经验多思考
问题:
if(cook[i].getName().equals("mrCookInfo")){
info = cook[i].getValue().split("#");
cook[i]数组是怎么自行划分的?cook标志了什么东西
Cookie myCook = new Cookie("mrCookInfo",name+"#"+account+"#"+password);
上行代码是什么意思?
response.addCookie(myCook);
再就是考虑作业的其他要求,即问候语句和提示是否非法访问
想法其实很有限,当看到这两个要求的时候只可以想到和if...else语句还有条件中会验证是否相等有关,但是对于详细的代码还是一头雾水,但是翻到了104面的上机练习有源代码,边抄边想

参照书上的代码,想直接更进一步智能判断账号密码是否正确而不只是固定的账号密码 ,但是失败了 ,上图代码存在问题

使用固定模板

得到预期结果,当然把index3中的固定提示界面删除了避免冲突
做到这里的时候我突然意识到一个问题似乎没有太清楚,就是为什么在按下提交之后可以看到预期的结果?
大致了解是因为在表单中强调了action由show.jsp完成,但是具体是什么原理没有很懂
在又想了一下代码之后考虑直接对index中的welcome进行操作,index中做出如下改动

很可惜的是一旦加上else语句之后html部分中账户文本框一行开始报错,好像不可行
以及在第十八行的您好后面用info[0]在运行后显示的仍然是info[0]本身,但是在第23行另起就可以在运行后自动更换成姓名,原因是什么?
最后就是未能正确跳转提示非法访问,想的是如果实现应该是一旦捕捉到空值就提示,即在name那里捕捉空值就提示

同之前一步的提示没正确输入账号密码一样,一旦加上else后就会提示错误,将其中文字替换成1234之后仍然报错,可以确定的只有不是因为编译不了汉字的原因
本次用时:4小时
文章描述了一位开发者在练习JavaWeb中关于Cookie和Session的管理遇到的问题,包括Cookie如何划分、代码含义、登录验证逻辑以及页面跳转的原理。开发者尝试实现动态验证账号密码,但遇到错误,并讨论了HTML与后端交互时出现的异常情况。
710

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



