JSP作业:1.计算字符串长度; 2.猜英文26个小写字母的web游戏

计算字符串长度

一、内容


       编写两个JSP页面inputString.jsp和computer.jsp,用户可以使用inputString.jsp提供表单的输入一个字符串,并提交给computer.jsp页面,该页面通过内置对象获取inputString.jsp页面提交的字符串,计算并显示该字符串的长度。

二、实现

inputString.jsp

<html>
<head>
<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>在此处插入标题</title>
</head>
<body>
<font size=5>
<form action="computer.jsp" method="post" name="form">
请输入一个字符串
<input type="text" name="str">
<input type="submit" value="提交并计算长度">
</form>
</body>
</html

 

 

computer.jsp

<html>
<head>
<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>在此处插入标题</title>
</head>
<body>
<font size=5>
<%String str=request.getParameter("str");
	byte b[]=str.getBytes("ISO-8859-1");
	str=new String(b);
%>
字符串长度:<%=str.length() %>
</body>
</html>

 

 

三、效果展示

 

 

猜英文26个小写字母的web游戏

一、内容

编写一个猜英文26个小写字母的Web游戏。当用户访问example4-18.jsp页面时,服务器随机分配一个a-z间的字母给用户,用户点击该页面的a连接跳转至guess.jsp页面进行猜测,guess.jsp请求Guess.tag判断用户猜测是否正确。

 

二、实现

 

example4-18.jsp

<html>
<head>
<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>在此处插入标题</title>
</head>
<body>
随机分配一个小写的英文字母,请猜猜看!
<%
int letter=(int)(Math.random()*26)+97;
session.setAttribute("count",new Integer(0));
session.setAttribute("save",new Integer(letter));
%>
<br><a href="guess.jsp">去猜猜这个数</a>
</body>
</html>

 

guess.jsp

 

<%@ page contentType="text/html;charset=utf-8"%>
<%@ taglib tagdir="/WEB-INF/tags" prefix="guessLetter"%>
<html>
<body>
<%String str=request.getParameter("guessLetter");
if(str==null){
	str="*";
}
if(str.length()==0){
	str="*";
}
%>
<guessLetter:GuessTag letter="<%=str %>"/>
当前猜测结果:<%=message %>
<%if(message.startsWith("你猜对了!")){
%>	<br><a href="example4-18.jsp">重新获得随机字母</a>
<%}
else{
%> <br> 输入你的猜测:
<form action="" method="post" name="form">
<input type="text" name="guessLetter">
<input type="submit" value="送出" name="submit">
</form>
<%}
%>
</body>
</html>

Guess.tag

 


<%@ tag pageEncoding='UTF-8'%>
<%@ attribute name="letter" required="true" %>
<%@ variable name-given="message" scope="AT_END"%>
<% String mess="";
	Integer integer=(Integer)session.getAttribute("save");  //随机生成的数
	int realletter=integer.intValue();
	int guessLetter=0;
	boolean boo=true;
	try{
		char ch[] = letter.toCharArray();
		byte b=(byte)ch[0];
		guessLetter=b;
	}
	catch(Exception exp){
		boo=false;
	}
	if(boo){
		if(guessLetter==realletter){
			int n=((Integer)session.getAttribute("count")).intValue();
			n=n+1;
			session.setAttribute("count",new Integer(n));
			mess="你猜对了!这是第"+n+"次猜测";
		}
		else if(guessLetter>realletter){
			int n=((Integer)session.getAttribute("count")).intValue();
			n=n+1;
			session.setAttribute("count",new Integer(n));
			mess="你猜大了!这是第"+n+"次猜测";
		}
		else if(guessLetter<realletter){
			int n=((Integer)session.getAttribute("count")).intValue();
			n=n+1;
			session.setAttribute("count",new Integer(n));
			mess="你猜小了!这是第"+n+"次猜测";
		}
		else if(letter.equals("你还没开始猜")){
			mess="你还没开始猜";
		}
		jspContext.setAttribute("message",mess);
	}
	else{
		jspContext.setAttribute("message","请输入你的猜测");
	}
%>

 

三、效果展示

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章