基础知识
- request.getRequestDispacher函数后面的forward(request, response)一般不变,但不能漏掉。
request.getRequestDispatcher("welcome.jsp").forward(request, response);
- System.out.print中S为大写。
- request.getParameter(“uname”)括号内表单名有引号。
- request.getParameter(“uname”)
- out.println(“hello.…”+name +"
") out.println无法换行,out.print可以识别html代码。System.out.print无法识别。 - session.setAttribute(uname, request.getParameter(“uname”)); 疑问:session.setAttribute是把值给了uname吗?就像普通赋值一样?还是说只是在session里面提供了一个键值对一种关系,uname变量里的值未改变?
String uname = new String();
String upwd = new String();
session.setAttribute(uname, request.getParameter("uname"));
session.setAttribute(upwd, request.getParameter("upwd"));
System.out.print("uname:"+uname+"<br/>"+"upwd:"+upwd);
session只是描述了一种键值对,一种关系,uname依旧为空,并没取到值与同名的变量没有任何关系,类似于表单里面的name的值。所以session和cookie在赋值的时候都需要加引号。
session.setAttribute("uname", request.getParameter("uname"));
- cookie可以存储数据,使得表单里面出现初始值。但是登陆后才会产生session和cookie。session和cookie什么时候失效,如果没有设置最大生存时间?
cookies默认生存期限就到关闭浏览器为止 。
Session的默认失效时间是30分钟。
session和cookie实现机制辨析
session存在于服务端,cookie由服务端产生发送给客户端存在于客户端。登录的之后session才会生效。每个用户都有sessionID标识的各自的session。session的默认失效时间为30分钟,cookies默认生存期限就到关闭浏览器为止 。当浏览器关闭,该用户对应的cookie立即失效,此时session还存在。当该用户再次登录时,直接匹配已经存在的session。对应cookie产生时,自动产生一个JSESSION键值对,并且将sessionId的值复制过去,实现session与cookie的一一对应。
不同用户的sessionId不同
-
抛出空指针错误,如果我知道它会抛出这个空指针,并且在抛出后有对空指针的处理,但是一抛出空指针,程序就中止了。该怎么办?改正程序,避免空指针?vs还是让空指针正常抛出?
解答:搜索了一下,大家基本上是修改代码来,避免这种情况。 -
pstmt.setString(1,uname)这个方法怎么用?