JSP學習之初識JSP(實現簡單的計算器)

IE瀏覽器->Tomcat->數據庫

訪問JSP的過程:如果是第一次訪問.jsp文件被服務器翻譯成一個對應的java文件(Servlet),然後,再被編譯成一個.class文件並裝載到服務器的內存中。如果以後訪問JSP,那就直接調用內存中JSP實例,第一次訪問JSP慢,後面訪問JSP的速度就會變快了。

<%@page contentType="text/html;charset=gb2312"%>
<html>
<body>
<h1>jsp1</h1>

<% %>這裏表示的是java代碼片段
<%
  int a=0;
  int b=9;
  int c=a+b;
  out.println("hello,world!,世界"+c);
%>
</body>
</html>

jsp和Servlet是對應關係,JSP是以Servlet爲基礎的

小示例1:

JSP實現計算器

知識點:

(1)如何接受JSP頁面提交的數據,並處理

(2)jsp如何使用java片段

(3)JSP中如何使用JavaScript完成對數據合法性的校驗

interFace.jsp界面代碼(負責界面的顯示,以及向result提交數據):

<!-- 這是計算器的界面-->
<%@page contentType="text/html;charset=gb2312"%>
<html>
<head>
	<!--在jsp中添加jsp代碼,防止用戶空提交-->
	<script language="javascript">
		//寫一個函數判斷用戶是不是提交空的
		function checkNum(){
			if(form1.num1.value==""){
				window.alert("num1,不能爲空haha");
				return false;
			}
			//判斷num1,是不是一個數
			if(Math.round(form1.num1.value)!=form1.num1.value){
				window.alert("num1,不是一個數");
				return false;
			}
		}
	</script>
</head>
	<body>
		<h1>我的計算器</h1>	
		<hr>
		<form name="form1" action="result.jsp">
			請輸入第一個數:<input type="text" name="num1"><br/>
			<select name="flag">
				<option value=+>+</option>
				<option value=->-</option>
				<option value=*>*</option>
				<option value=/>/</option>
			</select><br/>
			請輸入第二個數:<input type="text" name="num2"><br/>
			<input type="submit" value="計算" οnclick="return checkNum();"><!--點擊後會調用JavaScript腳本,這裏通過return返回給form-->
		</form>
		<hr>
	</body>
</html>

result.jsp界面代碼(負責數據的處理):

<!--得到數據並且顯示-->
<%@page contentType="text/html;charset=gb2312"%>
<html>
<head>

</head>
<body>
<%
	//接收第一個數(通過request接收,request類似Servlet中的HttpRequestServlet)
	String s_num1=request.getParameter("num1");
	//接收第二個數
	String s_num2=request.getParameter("num2");
	//接收運算符號
	String flag=request.getParameter("flag");

	int num1=0;
	int num2=0;
	int result=0;

	//java中 String ->int
	num1=Integer.parseInt(s_num1);
	num2=Integer.parseInt(s_num2);


	//計算
	if(flag.equals("+"))
	{
		result=num1+num2;
	}else if(flag.equals("-")){
		result=num1-num2;
	}else if(flag.equals("*")){
		result=num1*num2;
	}else{
		result=num1/num2;
	}
	//輸出結果
	out.println("結果是:"+result);
%>
</body>
</html>

小示例2:

按如下的目錄結構,在Tomcat服務器下建立文件夾MyJspSite以及文件hello.jsp,目錄結構如下:



以下是hello.jsp的代碼:

<%@page contentType="text/html;charset=gb2312"%>
<html>
<body>
<h1>jsp1</h1>
<%
  out.println("hello,world!,世界");
%>
</body>
</html>

啓動Tomcat後,在瀏覽器輸入地址後顯示如下:


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