jsp练习1

本文介绍了JSP的相关练习,包括使用新版本的eclipse和jdk解决适配问题,展示了一个生成九九乘法表的代码示例,以及讲解了JSP中的不同类型的注释。同时,通过实例详细阐述了如何通过request对象获取请求参数值和表单信息,包括单个参数和复选框、多选列表框的处理。
摘要由CSDN通过智能技术生成

一、准备工作

本周遇到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+"&nbsp");
		}
		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")+"&nbsp;&nbsp;"%>
  <% }
  %>
</li>
</ul>
</body>
</html>

效果如下👇

 

 

 

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值