一. servlet
1. servletRequest
①. getParameterNames():获取请求参数的名字
Enumeration<String> parameterNames = request.getParameterNames();
while (parameterNames.hasMoreElements()) {
System.out.println(parameterNames.nextElement());
}
②. getParameter(String string):根据请求参数的名字,获取参数值
String user = request.getParameter("user");
③. getParameterValues(String string):根据请求参数的名字,获取参数对应的数组
String[] interesting = request.getParameterValues("interesting");
④. getParameterMap():获取 map,键是请求参数的名字,值是请求参数的值
Map<String, String[]> parameterMap = request.getParameterMap();
for (Map.Entry<String, String[]> entry : parameterMap.entrySet()) {
System.out.println(entry.getKey()+":"+Arrays.asList(entry.getValue()));
}
⑤. getRequestURI():获取当前 URI
HttpServletRequest httpServletRequest=(HttpServletRequest) request;
String requestURI = httpServletRequest.getRequestURI();
⑥. getMethod():获取当前的请求方式(GET、POST)
String method = httpServletRequest.getMethod();
七. getQueryString():获取GET带参数查询
String queryString = httpServletRequest.getQueryString();
八. getServletPath():获取 servlet 的映射地址
String servletPath = httpServletRequest.getServletPath();
2. ServletResponse
①. 将 print 的参数打印在控制台上
PrintWriter out = response.getWriter();
out.print("hello");
②. 设置响应的内容类型
response.setContentType("application/msword");
3. 重定向与转发
// 转发
request.getRequestDispatcher("success.jsp").forward(request, response);
// 重定向,可以避免出现表单的重复提交问题
response.sendRedirect("success.jsp");
二. JSP
1. 声明
<%! public void test(){} %>
2. 注释
<%-- --%>
3. 在 servlet 中无法得到 pageContext 对象
4. 在 servlet 中获取 application 对象
getServletContext()
6. page 指令
// 当前 jsp 是否允许使用 session 对象,并不是 session 不能用
<%@ page session="false" %>
// 当出现错误时,友好的现实
<%@ page errorPage="error.jsp" %>
7. jsp:incluce 标签
<jsp:include page="b.jsp"></jsp:include>
动态引入: 并不是像 include 指令生成一个 Servlet 源文件
而是生成两个 Servlet 源文件, 然后通过一个方法的方式把目标页面包含进来
三. cookie
1. 设置最大时效,若为负数,表示不存储该 cookie。0的话,表示立即删除该 cookie
四. session
1. 使 HttpSession 失效
session.invalidate();
2. 设置 HttpSession 失效时间
session.setMaxInactiveInterval(60);
四. EL 表达式
1. EL 全名为 Expression Language,它原本是 JSTL 1.0 为方便存取数据所自定义的语言
2. EL 语法
所有 EL 都是以 ${ 为起始、以} 为结尾的
3. EL 变量
${username}。它的意思是取出某一范围中名称为 username的变量。因为我们并没有指定哪一个范围的 username,所以它的默认值会先从 Page 范围找,假如找不到,再依序到 Request、Session、Application 范围。假如途中找到 username,就直接回传,不再继续找下去,但是假如全部的范围都没有找到时,就回传 null
4. EL 可以自动转换类型
五. 标签(个人暂时不学,跳过)
六. Filter