0. 安装
安装JDK和Tomcat。
写在tomcat的安装路径的webapps目录下。
例如创建一个叫firstapp的子目录,然后创建hello.jsp,然后通过以下地址访问。
http://localhost:8080/firstapp/hello.jsp
1. JSP 6类元素
①注释元素
html注释
<!-- xxxxxxxxxxxxxxxxxxx -- >
隐藏注释(在jsp文件中,不发送到客户端)
<%-- xxxxxxxxxx --%>
scriptlets注释(同java注释)
②模板元素(jsp中静态html或xml内容)
③脚本元素(java代码)
包括
1)声明
<%! int number =0; %>
2)表达式
<%=number%>
3)scriptlets(java代码)
<% int i; String color=""; countPeople(); %>
④指令元素
<%@ directivename attribute ="value" %>
1)page指令:设定整个jsp网页的属性和相关功能。
<%@ page contentType="text/html;charset=GB2312" language="java" %>
2)include指令:包含指定位置的资源到当前jsp页面。
<%@ include file="hello.txt" %>
3)taglib指令:允许页面使用用户自定义标签。
⑤动作元素
1) <jsp:param>
2) <jsp:include> (include指令和include动作的区别?)
<jsp:include page="include2.jsp" flush="true" > <jsp:param name="User" value="HiFi King" /> </jsp:include>
3) <jsp:forward>
<jsp:forward page="forward1.jsp"> //从当前页面转到 forward1.jsp, 并传递参数a=1 <jsp:param name="a" value="1" /> </jsp:forward>
⑥内建元素
一般对象需要实例化,内建对象不需要。
1)out 输出
out.println("hello <br>");
2) request
getParameter() 单值
getParameterValues() 多值
<jsp:include page="include2.jsp" flush="true" > <jsp:param name="User" value="HiFi King" /> </jsp:include>
username=request.getParameter("User"); out.println("Username is "+username+"<br>");
3)response
sendRedirect()
addCookie()
4)session
setAttribute()
getAttribute()
if (session.getAttribute("Count")==null)
session.setAttribute("Count",new Integer("0"));
int cnt=((Integer)session.getAttribute("Count")).intValue();
session.setAttribute("Count",new Integer(++cnt));
5) application 存放所有用户共用信息
6)pageContext
2. 4种会话管理
① 隐藏域
通过request.getParameter()来接收上一个网页的数据来延续会话
<input type="hidden" name="*" value="**">
② URL重写
url后加参数,同样通过request.getParameter()来接收
③cookies
用 request.getCookies来接收上次的cookies
request.addCookie()
④session
session.getAttribute(name);
session.setAttribute(name,value);
如 ("count",new Integer"0") 只能存储对象,不能存储基本数据类型
session.removeAttribute(name); //删除 session.invalidate(); //销毁