【学习摘记】马士兵bbs初级版_课时11-12_发表新帖:仿照”回复”就好

【课时11 & 12】post_new_article——发表新帖,仿照”回复”就好~

1、容易犯的错误:

①.jsp文件的位置放错了,如放到web-info文件夹里

【学习摘记】马士兵bbs初级版_课时11-12_发表新帖:仿照”回复”就好

②传递参数检查必备:

get:看地址栏

Post:打印出来(out.println( ) -->console)

注:如果想检测是否有空格,可以 “ab”+ string + “ab”


2、发表新帖

①Tree.jsp : 增加“发表新帖”按钮

【学习摘记】马士兵bbs初级版_课时11-12_发表新帖:仿照”回复”就好

【学习摘记】马士兵bbs初级版_课时11-12_发表新帖:仿照”回复”就好


新建Post.jsp : 仿照Reply.jsp

提交按钮:

【学习摘记】马士兵bbs初级版_课时11-12_发表新帖:仿照”回复”就好

提交后的处理函数:

【学习摘记】马士兵bbs初级版_课时11-12_发表新帖:仿照”回复”就好

【学习摘记】马士兵bbs初级版_课时11-12_发表新帖:仿照”回复”就好


【事务的必要性】rootid的赋值

如果有2个人同时使用“发表新帖”功能,分别获得id=102、103,有可能在rootid分配的时候,第1个人拿到的就是103了。

 

【反馈】

这神奇的静电声……嗯 果真“醒脑”!


【问题】Post.jsp——mysql 符号出错

【学习摘记】马士兵bbs初级版_课时11-12_发表新帖:仿照”回复”就好

【学习摘记】马士兵bbs初级版_课时11-12_发表新帖:仿照”回复”就好

【解决方案】

查看代码。发现最有可能出错的2处位置——

1、sql语句的执行   2、update语句的执行


排查sql语句:

【学习摘记】马士兵bbs初级版_课时11-12_发表新帖:仿照”回复”就好


【学习摘记】马士兵bbs初级版_课时11-12_发表新帖:仿照”回复”就好


【学习摘记】马士兵bbs初级版_课时11-12_发表新帖:仿照”回复”就好


可插入成功。因此问题当不在此。


排查update语句

【学习摘记】马士兵bbs初级版_课时11-12_发表新帖:仿照”回复”就好


法一:sql命令行输入该语句,成功!

【学习摘记】马士兵bbs初级版_课时11-12_发表新帖:仿照”回复”就好


法二:查看视频中代码——真相大白

【学习摘记】马士兵bbs初级版_课时11-12_发表新帖:仿照”回复”就好

where前面少了一个空格!


【结语】

电脑虽然总是报错,但并不是胡搅蛮缠,都是“有迹可循”的。如果报错,还是多想想自己哪里输错了吧。