a.新建mycal.Jsp,把简单计算机的框架写出来:

<form action="myresult.jsp">
请输入第一个数:<input type="text" name="num1"><br>
<select name="flag">
<option value=+>+</option>
<option value=+>-</option>
<option value=+>*</option>
<option value=+>/</option>
</select>
请输入第二个数:<input type="text" name="num2"><br>
<input type="submit" value="计算">
</form><br>
<hr>
<!-- 这里输出计算的结果 -->
计算结果:<%= result %><!-- 表达式语法 -->
</body>

b.新建myresul.jsp,把简单算法写进去:

<body>
<%

//接收第一个数
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.print("结果是:"+result):
%>

c.这样运行的结果是没有问题的,如果更简化计算操作则需要将两个.jsp文件合并:

<%@ page language="java" import="java.util.*" pageEncoding="utf-8"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%>

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<base href="<%=basePath%>">

<title>My JSP 'ssss.jsp' starting page</title>

<meta http-equiv="pragma" content="no-cache">
<meta http-equiv="cache-control" content="no-cache">
<meta http-equiv="expires" content="0">
<meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
<meta http-equiv="description" content="This is my page">

<!-- 在jsp中添加js代码,防止用户空提交 -->
<script language="javascript">
function checkNum(){
//alert("shaji");
//alert(form.num1.value);
//判断num1,是不是空的
if(form.num1.value==""){
window.alert("num1,不能为空haha");
}
//判断num1,是不是一个数
if(Math.round(form.num1.value)!=form.num1.value){
window.alert("num1,不是一个数");
}
}

</script>
</head><h1>我的计算器</h1>
<!-- 这是计算机的界面 -->
<body>
<%
int result=0;
//接收第一个数
if(request.getParameter("num1")!=""){
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
if(s_num1!=null){
num1=Integer.parseInt(s_num1);
}
if(s_num2!=null){
num2=Integer.parseInt(s_num2);
}

//计算
if(flag!=null){
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.print("结果是:"+result);
}
}

%>
<form name="form" action="ssss.jsp">
请输入第一个数:<input type="text" name="num1"><br>
<select name="flag">
<option value=+>+</option>
<option value=->-</option>
<option value=*>*</option>
<option value=/>/</option>
</select>
请输入第二个数:<input type="text" name="num2"><br>
<input type="submit" value="计算" onclick="checkNum()" >
</form><br>
<hr>
<!-- 这里输出计算的结果 -->
计算结果:<%=result %><!-- 表达式语法 -->
</body>
</html>

第一个jsp代码实现简单计算器的更多相关文章

  1. 平时没有怎么用Excel做 加减乘除 计算,猛地发现,其实Excel 是一个很好的简单计算器

    平时没有怎么用Excel做 加减乘除 计算,猛地发现,其实Excel 是一个很好的简单计算器

  2. JavaWeb学习记录(二十)——Model1模式(javaBean+jsp)实现简单计算器案例

    ¨JSP技术提供了三个关于JavaBean组件的动作元素,即JSP标签,它们分别为: ¨<jsp:useBean>标签:用于在JSP页面中查找或实例化一个JavaBean组件. ¨< ...

  3. 多线程学习-基础( 十)一个synchronized(){/*代码块*/}简单案例分析

    一.提出疑惑 上一篇文章中,分析了synchronized关键字的用法.但是好像遗漏了一种情况. 那就是: synchronized(obj){/*同步块代码*/} 一般有以下几种情况: (1)syn ...

  4. Java后台及Jsp前端的简单分页_学习笔记

    在你需要导出显示大量列表时,在一页中都显示出来,是不美观页不实用的.在这种时候,就需要设置一个分页来显示你的内容,如百度的分页: 分页分为:前段分页和后端分页 后端分页: 首先我们应该确定,我们要分页 ...

  5. 基于MFC的一个简单计算器

    写一个简单的计算器并不是什么很难的事,主要目的是要通过这个程序来学习和分析其中的核心算法.这个简易计算器的核心部分就是对输入的表达式的正确性判断与求值,其中包括对表达式的解析.中缀表达式转后缀表达式. ...

  6. 一个用WPF做的简单计算器源代码

    一.界面设计XAML代码 <Window x:Class="fengjisuanqi.MainWindow" xmlns="http://schemas.micro ...

  7. PHP分页初探 一个最简单的PHP分页代码的简单实现

    PHP分页代码在各种程序开发中都是必须要用到的,在网站开发中更是必选的一项. 要想写出分页代码,首先你要理解SQL查询语句:select * from goods limit 2,7.PHP分页代码核 ...

  8. 将其它部分jsp代码包含进一个jsp文件

    <jsp:include page="文件路径/文件名.jsp" /> 将其它部分jsp代码包含进来.意义:将公共的部分代码抽出来,省略过多复制粘贴:只要改一个地方就O ...

  9. 菜鸟学Android编程——简单计算器《一》

    菜鸟瞎搞,高手莫进 本人菜鸟一枚,最近在学Android编程,网上看了一些视频教程,于是想着平时手机上的计算器应该很简单,自己何不尝试着做一个呢? 于是就冒冒失失的开撸了. 简单计算器嘛,功能当然很少 ...

随机推荐

  1. iis 应用程序池看不到 .net framework 4.0

    我的情况是,先配置了iis,然后再安装.net framework 4.0 进去设置应用程序池的时候,没有找到 .net framework 4.0 ,经过一番尝试,无效,最后无奈重启. 好了.

  2. ORA-00245: control file backup failed; target is likely on a local file system

    ORACLE11G RAC alert报错如下:Errors in file /u01/app/oracle/diag/rdbms/dljyzs/dljyzs1/trace/dljyzs1_ora_8 ...

  3. Blackfin DSP(五):BF533的SPI接口

    533SPI的特性 最高速度可达SCLK/4: 支持主模式和从模式: 可使用8个GPIO口作为从选择线: 1 slave select input pins 7 slave select output ...

  4. PHP如何获取文件行数

    本文实例讲述了PHP获取文件行数的方法.分享给大家供大家参考.具体分析如下:提供两种实现方法,虽然第二种简单易懂,但是第一种效率最好第一种: <?php $file_path = 'xxx.tx ...

  5. JavaScript(Iframe、window.open、window.showModalDialog)父窗口与子窗口之间的操作

    一.Iframe 篇 公共部分 //父对象得到子窗口的值 //ObjectID是窗口标识,ContentID是元素ID function GetValue(ObjectID,ContentID) { ...

  6. maximo功能修改笔记

    经过前几次的简单的修改系统功能,对maximo的bean开发已经有了一定了解,现在是耗时近两个礼拜来修改了一项系统功能,所用到的知识 Bean Fld, 下面我认真总结修改功能过程中的学到的知识: 目 ...

  7. The first day!!!

    我的小院子开通啦,开始记录自己的学习历程,加油!!!

  8. GIM企业即时通讯

    GIM企业即时通讯是笔者Garfield(QQ:3674571)采用.NetFramework4.0+SQL2008R2开发的一套企业内网/外网 通用的即时通讯(IM)软件,分为服务器端和客户端,通讯 ...

  9. 如何实现能像windows 窗体一样改变大小的控件 Silverlight

    众所周知,我们可以将鼠标放在windows窗体的边框上,按住鼠标左键改变窗体大小.那么,在silverlight上如何实现呢? 1. 需要将改控件放置在canvas上. 2. 判断鼠标位置,然后将Ar ...

  10. navicat for mysql

    下载地址:https://www.navicat.com/cht/download 详情:http://baike.baidu.com/link?url=zo3CUg3HC5XUHkz4YqXO6Em ...