java程序设计与【j2ee中间件技术】/【软件开发技术(III)】-实验四-编写简单的jsp页面
目录
- 题目1
- 1 题目说明
- 2 实验设计
- 3 运行界面截图与说明
- 4 代码
- login.jsp
- success.jsp
- validate.jsp
- 题目2
- 1 题目说明
- 2 实验设计
- 3 运行界面截图与说明
- 4 代码
- main.jsp
- cal.jsp
题目1
1 题目说明
1.编写三个JSP页面login.jsp、validate.jsp和success.jsp。login.jsp输入用户名和密码,并提交给validate.jsp进行用户验证,如果正确(这里是静态数据)则转到success.jsp,否则回到login.jsp。
2 实验设计
题目1工程结构:有三个jsp页面,分别为login.jsp,success.jsp和validate.jsp。在login.jsp页面有提交按钮,将表单提交给validate.jsp进行验证,由validate.jsp写死的用户名和密码数据对login.jsp提交出的用户名和密码进行验证。success.jsp页面在登录成功后弹出。
3 运行界面截图与说明
题目1运行结果:正确地创建了login.jsp页面,并提示用户输入用户名、密码,在输入完成后点击提交。
点击“提交”后,正确地进入了validate.jsp页面。在validate.jsp页面中,写死了用户名“zombotany”,密码为“zombotany”。若在login.jsp页面输入的用户名与密码与其完全一致,则输出“账号密码正确!为你转入成功页面”,3秒后打开success.jsp。
打开success.jsp,提示“登录成功”。
点击“提交”后,若账号密码输错,则validate.jsp提示“账号密码错误”,并在3秒后退回login.jsp。
4 代码
login.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>login.jsp</title>
</head>
<body><form action="validate.jsp">用户名:<input type="text" name="name"><br>密    码:<input type="password" name="password"><br><br><input type="submit"></input></form>
</body>
</html>
success.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>success.jsp</title>
</head>
<body>
登录成功!
</body>
</html>
validate.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>validate.jsp</title>
</head>
<%!String myName="zombotany";String myPassword="zombotany";
%>
<body>这是判断登录页面<br><%String name=request.getParameter("name");String password=request.getParameter("password");if (name.equals(myName)&&password.equals(myPassword)){out.println("账号密码正确!为你转入成功页面");response.setHeader("refresh","3;url=success.jsp");}else{out.println("账号密码错误!跳回登录页面");response.setHeader("refresh","3;url=login.jsp");}%>
</body>
</html>
题目2
1 题目说明
编写两个JSP页面,在第一个页面上输入两个操作数和一个操作符,在第二个页面上显示运算结果(只要实现加减乘除),如果输入不是数字提示重新输入。图如下。
2 实验设计
题目2工程结构:启动时运行main.jsp进行测试。main.jsp页面效果即为题目说明中的图6。cal.jsp负责对输入的数据进行判断与计算,并输出提示语句或计算结果。
3 运行界面截图与说明
该页面效果与题目说明中的图6是一致的,但图6为IE6等低版本浏览器中的效果,图8为chrome浏览器中的效果。有两个输入框可以输入两个操作数,中间可以选择运算符号。在输入后可以点击“计算”。
若输入为空,点击“计算”按钮后,系统会提示“输入不能为空!”,并跳转回输入页面。
若输入的不是数字,点击“计算”按钮后,系统会提示“输入错误!”,并跳转回输入页面。
若输入的数据正确,点击“计算”按钮后,系统会正确地计算运行结果。
4 代码
main.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>main.jsp</title>
</head>
<body><font size="40">计算器</font><br><form action="cal.jsp"><input type="text" name="num1"><select name="op" ><option value="+">+<option value="-">-<option value="*">*<option value="/">/</select><input type="text" name="num2"><br><input type="submit" value="计算"></form>
</body>
</html>
cal.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8"pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<%@page import="java.util.*"%>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<%String str1=new String(request.getParameter("num1"));String str2=new String(request.getParameter("num2"));if (!str1.isEmpty() && !str2.isEmpty()){Scanner sc1=new Scanner(str1);Scanner sc2=new Scanner(str2);if (sc1.hasNextDouble()&&sc2.hasNextDouble()){char op=request.getParameter("op").charAt(0);double num1=sc1.nextDouble();double num2=sc2.nextDouble();switch (op){case '+':out.println(num1+num2);break;case '-':out.println(num1-num2);break;case '*':out.println(num1*num2);break;case '/':out.println(num1/num2);break;default:break;}}else{out.println("输入错误!跳转回输入页面");response.setHeader("refresh","3;url=main.jsp");}sc1.close();sc2.close();}else{out.println("输入不能为空!");response.setHeader("refresh","3;url=main.jsp");}%>
</body>
</html>
java程序设计与【j2ee中间件技术】/【软件开发技术(III)】-实验四-编写简单的jsp页面相关推荐
- java程序设计与j2ee中间件技术/软件开发技术(III)-大作业-采用MVC模式实现商品信息的查询显示(可以模糊查询)、增加和删除功能,商品表自拟,实现简单菜单操作和分页显示
目录 1.题目说明 2.实验设计 2.1 表设计 2.2 工程结构 3.运行界面截图与说明 4.小结 附录:源代码 src/main/java src/main/java/bean Goods.jav ...
- 传道解惑 软件开发技术名词解密
传道解惑 软件开发技术名词解密 序:去年为了总结自己所学习/接触过的技术,也顺便为初学者少走弯路指明一些方向,可惜后来诸事缠身未能继续,十分遗憾,现放到自己的BLOG上来鼓励自己将此继续下去. &qu ...
- 软件开发技术常用术语英中对照
软件开发技术常用术语英中对照 A.I. 人工智能 A2A integration A2A整合 abstract 抽象的 abstract base class (ABC)抽象基类 abstract c ...
- 点评主流软件开发技术
为什么80%的码农都做不了架构师?>>> 点评主流软件开发技术 http://soft.chinabyte.com/297/8698297.shtml ■ 河北秦皇岛 谷俭政 ...
- 2020年度总结 | 葡萄城软件开发技术回顾
本文由葡萄城技术团队原创并首发 转载请注明出处:葡萄城官网,葡萄城为开发者提供专业的开发工具.解决方案和服务,赋能开发者. 2020年是不平凡的一年,虽然疫情为整个社会都带来了巨大的冲击,但IT技术人 ...
- 软件开发技术联盟 - 图书系列资源
软件开发技术联盟编著,清华大学出版社出版. 资料来源官方授权许可,详情见链接 资源出处 另外推荐学习资源网站: 清华出版社图书资源 以下为软件开发技术联盟所提供的图书配套资源,多为图书所带光盘资料,为 ...
- 2021年度总结 | 葡萄城软件开发技术回顾(下)
2021年度总结 | 葡萄城软件开发技术回顾(下) 在上节中,我们介绍了在过去一年中葡萄城在控件领域中的一些新探索,新尝试. (详细内容:https://www.cnblogs.com/powerto ...
- 软件开发技术顾问_成为成功的软件开发顾问的5个关键
软件开发技术顾问 为什么我成为顾问 当我在2007年离开首席信息官(CIO)职位时,我想回到纯粹的软件开发领域. 软件开发工作(编程)是我的挚爱,在担任CIO几年后,我开始讨厌预算和更多预算以及捍卫预 ...
- 从今天开始,我就要潜心研究软件开发技术了,不在被名利所困
参加工作六年来,我一直被虚名所困,想要通过努力得到单位的认可,但是由于我是小副科,学校领导根本不放在心上,我反而为此浪费了很多宝贵的时间. 从今天开始,我就要潜心研究软件开发技术,不再在单位争名夺利了 ...
最新文章
- MySQL必知必会读书笔记
- nyoj1311勤奋的涟漪
- java入门应该学什么_初学Java应该掌握哪些基础知识?
- 列表流和feed流_通过流而不是列表
- 定制化WordPress后台的6个技巧
- MySQL5.7的配置文件
- sql入门基础知识分享
- android防止程序休眠,android 设置 永不休眠
- redis设计秒杀活动图解
- 微信硬件平台蓝牙打印机
- 如何关闭win10自带杀毒?
- 常见的Linux查看检索归档文件及vi文本编辑器操作大全
- 如何快速把芝麻信用分提高到750以上?
- 计算机系统 ahci模式,老电脑安装系统忘记开启AHCI模式,教你不重装系统开启AHCI解决方法(3)...
- Maya Python脚本导出OBJ
- 浅析Margin和Padding属性
- 酷壳用的还是 Wordpress
- 日期格式化使用 YYYY-MM-dd 的潜在问题
- Maven - 6、生命周期和插件详解
- 【Linux】理解文件系统——软硬链接
热门文章
- matlab怎么方差函数,密度函数已知,怎么用matlab求其数学期望和方差?
- vue设置404页面
- Excel中VBA实现文件夹表格合并和数据提取
- [Cadence Sigrity] PowerDC打开提示No license available
- 低估蓝筹股成大势所趋,千万不要错过这个投资机会
- 我看2008—IT之最
- 基于Java+SpringBoot+Thymeleaf+Mysql旅游景区景点售票购票系统系统设计与实现
- 鸿蒙构建系统——gn官方FAQ翻译,以及gn官方文档分享
- python 自动化办公要装哪些模块_Python自动化办公(内容)
- gd32f470总结