JSP习题4

3、编写两个JSP页面,用户可以使用inputString.jsp提供的表单输入一个字符串,并提交给另一个jsp页面,该页面通过内置对学校获取inputString.jsp页面提价的字符串,并显示该字符串的长度

<!-- inputString.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>inputString</title>
</head>
<body>

<form action="computer.jsp" method="get" name=form>
<table border = 1>
<tr><td>请输入字符串:<br><input type="text" name="str"></td></tr>
<tr><td><input type="submit" value="提交" name="submit"></td></tr>
</table>
</form>
</body>
</html>




<!-- computer.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>computer</title>
</head>
<body>
<table border = 1>
<tr><td>
输入的字符串为:
<% String stri=request.getParameter("str") ;
%>
<%= stri %>   </td></tr>
<tr><td>
输入的字符长度为:<%= stri.length() %>  
</td></tr>
</table>

</body>
</html>

 6、参照猜100以内数字例子编写一个猜英文26个小写字母的web游戏

主要将课本的例子随机生成一个正整形的100以内的数字改为随机生成一个小写字母,如下。然后将后面的获取整形数值改为获取一个字符型

<%  
char a[] = new char[26];
int m=0;
for(char c='a';c<='z';c++){
	a[m] = c;
	m++;
}
int num=(int)(Math.random()*a.length);
char ch =a[num];

下面是完整代码

<!-- inputInt.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~z之间的一个小写字母,请猜!
<%  
char a[] = new char[26];
int m=0;
for(char c='a';c<='z';c++){
	a[m] = c;
	m++;
}

int num=(int)(Math.random()*a.length);
char ch =a[num];
session.setAttribute("count",new Integer(0));
session.setAttribute("save",new Character(ch));
%>
<br><a HREF = "guess.jsp">点击这里去猜这个字母</a>
</body>
</html>



<!-- guess.jsp -->
<%@ page language="java" contentType="text/html; charset=utf-8"
    pageEncoding="utf-8"%>
<%@ taglib tagdir = "/WEB-INF/tags" prefix = "guessNumber" %>
<!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>
<% String str = request.getParameter("guessLetter");
	if(str == null)
		str = "*";
	if(str.length()==0)
		str = "*";
%>
<guessNumber:GuessTag number="<%= str %>"></guessNumber:GuessTag>
当前的猜测结果:<%= message %>
<% if(message.startsWith("你猜对了")){
	%>  <br><a HREF = "inputInt.jsp">重新获取一个字母</a>
<% }
	else{
	%> <br>输入你的猜测(a~z):
	<form action=""method="post" name=form>
		<INPUT type = "text" name = "guessLetter">
		<INPUT TYPE = "submit" value= "送出" name="submit">
	</form>
	<% }
%>

</body>
</html>


<!-- GuessTag.tag -->

<%@ tag language="java" pageEncoding="utf-8"%>
<%@ attribute name="number" required = "true"%>
<%@ variable name-given = "message" scope="AT_END" %>
	<% String mess= "";
	Character ch = (Character)session.getAttribute("save");
	char realnumber = ch.charValue();
	//int guessNumber= 0;
	char guessNumber =(number.trim()).charAt(0);
	//boolean boo = true;
	//try{ guessNumber = Integer.parseInt(number);
	//}
	//catch(Exception exp){
		//boo=false;
	//}
	out.print("你猜测的是:"+guessNumber+"<br/>");
	if(guessNumber<='z'&&guessNumber>='a'){
		if(guessNumber == realnumber){
			int n=((Integer)session.getAttribute("count")).intValue();
			n=n+1;
			session.setAttribute("count", new Integer(n));
			mess ="你猜对了,这是第"+n+"次猜测";
		}
		else if(guessNumber>realnumber){
			int n=((Integer)session.getAttribute("count")).intValue();
			n=n+1;
			session.setAttribute("count", new Integer(n));
			mess ="你猜大了,这是第"+n+"次猜测";
		}
		else if(guessNumber<realnumber){
			int n=((Integer)session.getAttribute("count")).intValue();
			n=n+1;
			session.setAttribute("count", new Integer(n));
			mess ="你猜小了,这是第"+n+"次猜测";
		}
		//else if(number.equals("你还没开始猜测")){
			//mess="你还没开始猜测";
		//}
		jspContext.setAttribute("message", mess);
	}
	
	else{
		jspContext.setAttribute("message", "请输入你的猜测");
	}
	%>

 下面是截图

 

JSP100选择题 适合考前练习 1 J2EE 中,()类的()方法用于创建对话。(选择一项) a) HttpServletRequest、getSession b) HttpServletResponse、newSession c) HtttpSessionnewInstance d) HttpSession、getSession 2 给定一个 Servlet 的doGet方法中的代码片段,如下: request.setAttribute(“name”,”zhang”); response.sendRedirect(“http://localhost:8080/servlet/MyServlt”); 那么在 MyServlet 中可以使用()方法把属性 name的值取出来。(选择一项) a) String str=request.getAttribute(“name”); b) String str=(String)request.getAttribute(“name”); c) Object str=request.getAttribute(“name”); d) 无法取出来 3.在Servlet里,能实现重定向的方法有()。(选择两项) A.运用javax.servlet.http.HttpServletRequest接口的sendRedirect方法 B.运用javax.servlet.http.HttpServletResponse接口的sendRedirect方法 C.运用javax.servlet.RequestDispatcher接口的forward方法 D.运用javax.servlet.ResponseDispatcher接口的forward方法 4.利用MyEclipse开发Servlet,下列说法正确的是( )。(只选两项) A. MyEclipse可自动产生web.xml B. MyEclipse不能自动产生web.xml,需要手工编写 C.可利用MyEclipse自带的Tomcat作为Servlet容器 D. MyEclipse没有自带Tomcat,需要自己安装配置。 5.编写Servlet 的doPost方法时,需要抛出异常为()。(只选一项) A.ServletException, IOException B.ServletException, RemoteException C.HttpServletException, IOException D.HttpServletException, RemoteException 6.有关会话跟踪技术描述正确的是()。(选择三项) A.Cookie是Web服务器发送给客户端的一小段信息,客户端请求时,可以读取该信息发送到服务器端 B.关闭浏览器意味着会话ID丢失,但所有与原会话关联的会话数据仍保留在服务器上,直至会话过期 C.在禁用Cookie时可以使用URL重写技术跟踪会话 D.隐藏表单域将字段添加到HTML表单并在客户端浏览器中显示 …………
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值