知识漏洞 有空就默写一下-.-
【概念】 要好好理解并且背下来记住
MVC要分开,Servlet里面不处理计算的逻辑,只有调用函数(是不是变量传进来以后,调用都不能有呢?)
clear map不能直接放在定义map下面,需要放在方法内部就行了
我发现Debug要停了才能改代码。
500也可能是没有设置attribute导致的,需要传进去。
request.setAttribute("pictureURL",pictureURL);是把变量传入进去。然后在JSP中通过(request.getAttribute("picSize")(要加双引号)拿出来用
JSP的文件头 meta在JSP函数上方,是自己有的。Response是通过model把这些东西传进去的。
<%@page contentType="text/html" pageEncoding="UTF-8"%>
<%= request.getAttribute("doctype") %>
引用自:https://fruithardcandy.iteye.com/blog/1412437
welcome-file-list是一个配置在web.xml中的一个欢迎页,用于当用户在url中输入工程名称或者输入web容器url(如http://localhost:8080/)时直接跳转的页面. 例如: <welcome-file-list> <welcome-file>index.html</welcome-file> <welcome-file>index.jsp</welcome-file> <welcome-file> index.action </welcome-file> </welcome-file-list> 今天我遇到了一个问题,就是直接输入localhost:8080/不是跳转到index.html,而是报404找不到的错误,根据错误信息看明显是没有跳转到index.html,意思就是说welcome-file-list根本就木有起作用。 解决问题一定要从原理入手,所以要先分析welcome-file-list是怎么工作的。 welcome-file-list的工作原理是,按照welcome-file的.list一个一个 去检查是否web目录下面存在这个文件 ,如果存在,继续下面的工作(或者跳转到index.html页面,或者配置有struts的,会直接struts的过滤工作).如上例,先去webcontent(这里是Eclipse的工程目录根目录)下是否真的存在index.html这个文件,如果不存在去找是否存在index.jsp这个文件,以此类推。 还要说的是welcome-file不一定是html或者jsp等文件,也可以是直接访问一个action。就像我上面配置的一样,但要注意的是,一定要在webcontent下面建立一个index.action的空文件,然后使用struts配置去跳转,不然web找不到index.action这个文件,会报404错误,原因就是我之前说的那样。
servlet URL要通过@来联系:
@WebServlet(name = "ClickerServlet",
urlPatterns = {"/submitClicker", "/getResults"})
【方法论】要好好理解并且背下来记住
不会写的可以自己查菜鸟教程
500 后台报错,500都是内部服务器有错导致的,自己看看server的控制台
【细节】看看就行了,最好也记住
网页里为什么没有<form>了?导致URL定位错了,细节太搓了
请求没发到post里面, JSP代码里的method对应要改成post
JSP的按钮的name需要和getparameter对应 比如都叫做choice
processRequest(request, response);不区分get post,统一处理用的。分开处理时可以删掉。
choiceMap.get("A")括号优先级比较高,会报空的错误
不能在方法里每次都初始化hashmap。switch后面要加break。
IfAbsent不能乱用,真的就是absent的时候才操作。
方法论:多打几个断点,点击F8往下走而不是三角形▶️