一、准备工作
本周遇到eclipse不适配的问题,于是重新下载了jdk和eclipse的新版本。
二、代码练习
5-4练习
- <% 编写Java %>
书P85 例5-3
<%@ page language="java" import="java.util.*" pageEncoding="GB18030"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>JSP的代码片段</title>
</head>
<body>
<%
long startTime = System.nanoTime();
%>
输出九九乘法表
<br>
<%
for(int i=1;i<=9;i++){
for(int j=1;j<=i;j++){
String str=j+"*"+i+"="+i*j;
out.print(str+" ");
}
out.println("<br>");
}
long time = System.nanoTime()-startTime;
%>
生成九九乘法表用时
<%
out.println(time/1000);
%>毫秒
</body>
<html>
- 声明脚本 用于定义全局变量(全局变量定义后,整个JSP页面都可以被使用)
- JSP表达式<% 表达式%>
可以将表达式的运算结果转换为字符串类型。
<% 表达式%>
5-5练习
- HTML注释
<!--注释文本-->
- JSP注释(不会发送到客户端,在浏览器中查看源代码时也不会被看到)
<%--注释文本--%>
- 动态注释(HTML注释对JSP嵌入的代码不起作用,因此可以将二者组合起来,变成动态HTML注释文本)
<!--<%=new Date()%>-->
- 代码注释(JSP支持嵌入的Java代码)
<%
//单行注释
/*
多行注释
*/
%>
<%/**JavaDoc注释,用于成员注释*/%>
5-6 request对象练习
5.6.1获取请求参数值练习
通过"?"(?代表某一参数),然后通过request对象的getParameter()方法来获取?参数的值。(Parameter的意思为参数)
e.g.
String id=request.getParameter("id")
【例5-4】
使用request对象获取请求参数值
先建一个index.jsp页面
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
</head>
<body>
<a href="show.jsp?id=001">获取请求参数的值</a>
</body>
</html>
再建一个show.jsp页面
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
</head>
<body>
id参数的值为:<%=request.getParameter("id")%><br>
name参数的值为:<%=request.getParameter("name") %>
</body>
</html>
运行结果如下👇
点击超链接后出现以下内容:
5.6.2 获取Form表单的信息
- 对于文本元素、单选按钮、单选下拉列表框,使用getParameter()方法来获取其值;
- 对于复选框、多选列表框,使用getParameter Values()方法来获取其值。
【例5-5】获取表单信息
先写一个index.jsp页面
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
</head>
<body>
<form action="show_.jsp" method="post">
<ul style="list-style:none;line-height:30px">
<li>输入用户姓名:<input type="text" name="name"/><br/></li>
<li>选择性别:
<input name="sex" type="radio" value="男"/>男
<input name="sex" type="radio" value="女"/>女
</li>
<li>
选择密码提示问题:
<select name="question">
<option value="母亲生日月份">母亲生日月份</option>
<option value="宠物名称">宠物名称</option>
<option value="最喜欢的数字">最喜欢的数字</option>
</select>
</li>
<li>请输入问题答案:<input type="text" name="key"/>
<li>
请选择个人的兴趣爱好:
<div style="width:400px">
<input name="like" type="checkbox" value="唱歌跳舞"/>唱歌跳舞
<input name="like" type="checkbox" value="器乐演奏"/>器乐演奏
<input name="like" type="checkbox" value="户外登山"/>户外登山<br/>
<input name="like" type="checkbox" value="周游旅行"/>周游旅行
<input name="like" type="checkbox" value="看书听歌"/>看书听歌
</div>
</li>
<li><input type="submit" value="提交"/></li>
</ul>
</form>
</body>
</html>
再建一个show_.jsp 页面
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title></title>
</head>
<body>
<ul style="list-style:none; line-height:30px">
<li>输入用户姓名:
<%=new String(request.getParameter("name").getBytes("ISO8859_1"),"UTF-8")%></li>
<li>选择性别:
<%=new String(request.getParameter("sex").getBytes("ISO8859_1"),"UTF-8")%></li>
<li>选择密码提示问题:
<%=new String(request.getParameter("question").getBytes("ISO8859_1"),"UTF-8")%></li>
<li>请输入问题答案:
<%=new String(request.getParameter("key").getBytes("ISO8859_1"),"UTF-8")%></li>
<li>
请选择个人爱好:
<%
String[] like =request.getParameterValues("like");1l
for(int i=0;i<like.length;i++){
%>
<%=new String(like[i].getBytes("ISO8859_1"),"UTF-8")+" "%>
<% }
%>
</li>
</ul>
</body>
</html>
效果如下👇